Variáveis-membro e métodos
Declare variáveis-membro, escreva métodos-membro e faça referência a eles através de instâncias
Variáveis-membro e métodos é uma aula grátis de C++ Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de C++ Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de C++ Academy inclui 4 aulas no total.
Membros de uma classe
Uma classe pode conter:
- Variáveis membro (dados, às vezes chamadas de campos)
- Funções membro (métodos)
- Tipos aninhados (definições de tipos, enumerações e classes)
- Membros estáticos (compartilhados entre todas as instâncias)
Declarando variáveis membro
Declare-as no corpo da classe. Use inicializadores padrão dentro da classe do C++11 para manter o código limpo.
class Person {
std::string name_ = "unknown";
int age_ = 0;
public:
// ...
};Convenções de nomenclatura
Convenções comuns para membros privados:
- Sublinhado no final:
name_ m_no início:m_name- Nomes simples com
this->implícito
Escolha uma e mantenha a consistência.
Definindo métodos dentro da classe
Métodos curtos podem ser definidos diretamente no corpo da classe — e são implicitamente considerados definições em linha.
class Counter {
int n_ = 0;
public:
void increment() { ++n_; }
int value() const { return n_; }
};Definindo métodos fora da classe
Métodos mais longos geralmente são definidos fora da classe, frequentemente em um arquivo .cpp. Use o operador de resolução de escopo ::.
// header
class Logger {
public:
void log(const std::string& msg);
};
// implementation
void Logger::log(const std::string& msg) {
std::cout << "[LOG] " << msg << "\n";
}Chamando métodos
Use a sintaxe de ponto com objetos e a sintaxe de seta com ponteiros.
Counter c;
c.increment();
Counter* p = &c;
p->increment();Métodos const
Métodos que não modificam o objeto devem ser marcados como const. Eles podem ser chamados em instâncias const.
class Counter {
int n_ = 0;
public:
int value() const { return n_; } // does not modify *this
};Membros estáticos
Membros estáticos pertencem à classe, não às instâncias. Declare-os com static e defina-os em um arquivo de origem.
class Logger {
public:
static int messageCount;
static void log(const std::string& msg);
};
int Logger::messageCount = 0;Especificadores de acesso
Três níveis de acesso:
public— acessível de qualquer lugarprivate— acessível somente dentro da classeprotected— acessível dentro da classe e das classes derivadas
Encapsulamento na prática
Torne os membros de dados privados. Exponha-os por meio de métodos que imponham invariantes.
class Temperature {
double celsius_ = 0.0;
public:
void setCelsius(double c); // validates range
double celsius() const { return celsius_; }
double fahrenheit() const { return celsius_ * 9.0/5.0 + 32; }
};Métodos e funções livres
Nem tudo precisa ser um método. Se uma função usa apenas a interface pública, prefira uma função livre — isso reduz o acoplamento.
Verificação rápida
Qual palavra-chave indica que uma função membro não modifica o objeto?
Recapitulação
As variáveis membro armazenam o estado de cada instância; os métodos operam sobre esse estado. Marque os métodos que não modificam o objeto com const. Mantenha os dados privados e exponha o comportamento por meio de uma interface pública pequena e intencional.
Perguntas Frequentes
A aula “Variáveis-membro e métodos” é grátis?
Sim — o texto completo de “Variáveis-membro e métodos” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de C++ Academy, atualize para CoddyKit PRO. O curso de C++ Academy inclui 4 aulas no total.
O que vou aprender em “Variáveis-membro e métodos”?
Declare variáveis-membro, escreva métodos-membro e faça referência a eles através de instâncias Você pratica C++ Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar C++ Academy?
Nenhuma experiência prévia é necessária. C++ Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “Variáveis-membro e métodos”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de C++ Academy?
Sim. Cada aula de C++ Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- struct versus class: quando usar cada um
- Variáveis-membro e métodos
- Construtores e listas de inicialização de membros
- O ponteiro this e o encapsulamento