Compartilhar via


Construtores (C++)

Uma função de membro com o mesmo nome de sua classe é uma função de construtor.Construtores não podem retornar valores.Especificando um construtor com um tipo de retorno é um erro, como é pegar o endereço de um construtor.

Se uma classe tem um construtor, cada objeto do mesmo tipo é inicializado com o prévio do construtor para usar em um programa.(Para obter mais informações sobre a inicialização, consulte A funções de membro especial usando inicialização.)

Construtores são chamados no ponto de que um objeto é criado.Os objetos são criados como:

  • Objetos globais (escopo do arquivo ou vinculados externamente).

  • Objetos locais, dentro de uma função ou um bloco delimitador menores.

  • Objetos dinâmicos, usando o nova operador.O nova operador aloca um objeto na pilha do programa ou "armazenamento livre".

  • Objetos temporários criados chamando explicitamente um construtor.(Para obter mais informações, consulte Objetos temporários.)

  • Objetos temporários implicitamente criados pelo compilador.(Para obter mais informações, consulte Objetos temporários.)

  • Membros de dados de outra classe.Criar objetos do tipo de classe, onde o tipo de classe é composto por outras variáveis do tipo de classe, causa a cada objeto na classe a ser criado.

  • Objetos filho específicos de classe base de uma classe.Criar objetos do tipo de classe derivada, faz com que os componentes de classe base a ser criado.

Exemplo

// constructors.cpp
// compile with: /c
class MyClass {
public:
   MyClass(){}
   MyClass(int i) : m_i(i) {}

private:
   int m_i;
};

Consulte também

Referência

Funções de membro especial (C++)