Resultados da pesquisa a pedido "ctor-initializer"
Inicialização de membro ao usar o construtor delegado
Eu comecei a experimentar o padrão C ++ 11 e eu encontreiisto pergunta que descreve como chamar seu ctor de outro ctor na mesma classe para evitar ter um mét...
O que um cólon após um nome de construtor de C ++ faz? [duplicado]
Esta questão já tem uma resposta aqui:O que é essa estranha sintaxe de membro de dois-pontos (“:”) no construtor? 12 respostasO que o operador de dois pontos...
Variáveis após os dois pontos em um construtor [duplicado]
Esta pergunta já tem uma resposta aqui: Qual é essa sintaxe estranha de membro do cólon (“:”) no construtor? [/questions/1711990/what-is-this-weird-colon-member-syntax-in-the-constructor] 12 respostasAinda estou aprendendo C ++ e tentando ...
Posso chamar uma função virtual para inicializar um subobjeto de classe base?
Eu sei que funções virtuais não devem ser chamadas direta ou indiretamente em um construtor, mas esse código funciona bem. O que tenho aqui é seguro? #include <iostream> #include <string> struct A { A (const std::string& name) {std::cout << name ...
Um membro da classe de referência constante prolonga a vida de um temporário?
Por que isso: #include <string> #include <iostream> using namespace std; class Sandbox { public: Sandbox(const string& n) : member(n) {} const string& member; }; int main() { Sandbox sandbox(string("four")); cout << "The answer is: " ...
Ctor Initializer: a auto-inicialização causa falha?
Foi difícil depurar uma falha na produção. Só queria confirmar com o pessoal aqui sobre a semântica. Temos uma classe como ... class Test { public: Test() { // members initialized ... m_str = m_str; } ~Test() {} private: // other members ... ...
Inicializando uma matriz de membro no inicializador do construtor
class C { public: C() : arr({1,2,3}) //doesn't compile {} /* C() : arr{1,2,3} //doesn't compile either {} */ private: int arr[3]; };Eu acredito que a razão é que as matrizes podem ser inicializadas apenas com= sintaxe, ou seja: int arr[3] = ...
ependências nas listas de inicializaç
Esse comportamento está bem definido? class Foo { int A, B; public: Foo(int Bar): B(Bar), A(B + 123) { } }; int main() { Foo MyFoo(0); return 0; }