Última atualização:2026-10-12
Diferenças entre struct e class em C++¶
Sobre o autor:¶
Conta oficial do WeChat:

Sobre o conteúdo de struct em C e C++: veja struct那些事
Em linhas gerais, struct é mais adequado para ser visto como a implementação de uma estrutura de dados, enquanto class é mais adequado para ser visto como a implementação de um objeto.
Diferenças:
A diferença mais essencial é o controle de acesso padrão.
A permissão de acesso padrão na herança: em struct ela é public; em class, private.
Como implementação de uma estrutura de dados, struct tem, por padrão, o controle de acesso aos dados público (public), enquanto class, como implementação de um objeto, tem, por padrão, o controle de acesso às suas variáveis membro privado (private).
Tópicos relacionados¶
- Funções virtuais puras e classes abstratas em C++ | C++那些事
- Asserções com assert em C++ | C++那些事
- Bit fields em C++ | C++那些事
- Implementando polimorfismo de C++ em linguagem C | C++那些事
- Constantes e modificadores com const em C++ | C++那些事
- A família completa do const em C++ | C++那些事
- O operador de desreferência * em C++ | C++那些事
- Inicialização e atribuição em C++ | C++那些事
- Formas de retornar múltiplos valores em C++ | C++那些事
- A palavra-chave mutable em C++ | C++那些事