Avatar ·

É possível chamar um construtor de outro em C++ (encadeamento de construtores)?

Olá a todos! Comecei a estudar C++ depois de Java e me deparei com um problema. Em Java, eu costumava fazer assim: ```java public class MyClass { private int x; private int y; public MyClass() { this(0, 0); // chamada do construtor com parâmetros } public MyClass(int x, int y) { this.x = x; this.y = y; } } ``` Agora estou tentando fazer o mesmo em C++: ```cpp class MyClass { private: int x; int y; public: MyClass() { MyClass(0, 0); // não é permitido? } MyClass(int x, int y) { this->x = x; this->y = y; } }; ``` Mas isso não funciona! No construtor padrão, um objeto temporário é criado e imediatamente destruído, enquanto os campos do objeto atual permanecem não inicializados. Como organizar corretamente o encadeamento de construtores em C++? Preciso escrever um método init() separado ou existe uma maneira mais elegante? Agradeço desde já pela ajuda! <<>>

Problema da chamada de co