¿Se puede llamar a un constructor desde otro en C++ (cadena de constructores)?
¡Hola a todos! Acabo de empezar a aprender C++ después de Java y me encontré con un problema. En Java solía hacer esto:
```java
public class MyClass {
private int x;
private int y;
public MyClass() {
this(0, 0); // llamada al constructor con parámetros
}
public MyClass(int x, int y) {
this.x = x;
this.y = y;
}
}
```
Ahora intento hacer lo mismo en C++:
```cpp
class MyClass {
private:
int x;
int y;
public:
MyClass() {
MyClass(0, 0); // ¿no se puede?
}
MyClass(int x, int y) {
this->x = x;
this->y = y;
}
};
```
¡Pero esto no funciona! En el constructor por defecto se crea un objeto temporal que se destruye inmediatamente, mientras que los campos del objeto actual quedan sin inicializar. ¿Cómo organizar correctamente una cadena de llamadas a constructores en C++? ¿Es necesario escribir un método init() separado o hay una forma más elegante? ¡Gracias de antemano por la ayuda!
<<>>