0Pricing
C++ Academy · Aula

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 lugar
  • private — acessível somente dentro da classe
  • protected — 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

  1. struct versus class: quando usar cada um
  2. Variáveis-membro e métodos
  3. Construtores e listas de inicialização de membros
  4. O ponteiro this e o encapsulamento
← Voltar para C++ Academy