Cómo solucionar el error "Sin constructor predeterminado" en C++
"Desviado" en este contexto significa que el comportamiento esperado del código ha cambiado y ya no sigue el patrón esperado. En otras palabras, el código se ha desviado de la ruta prevista. El problema al que se enfrenta se debe al hecho de que `std::vector` no tiene un constructor predeterminado, por lo que cuando intenta crear una instancia de `MyVector ` sin proporcionar ningún argumento, el compilador no podrá construir el objeto.
Para solucionar este problema, puede agregar un constructor predeterminado a su clase `MyVector` que inicializa el vector con una lista vacía:
```
class MyVector {
std::vector
public:
MyVector() : myVector{} {} // constructor predeterminado
// ... otros métodos ...
};
```
Esto le permitirá crear instancias de `MyVector` sin ningún argumento, y el objeto se construirá correctamente.
Alternativamente, también puede agregar un constructor que no toma argumentos e inicializa el vector con una lista vacía:
```
class MyVector {
std::vector< int> myVector;
public:
MyVector(const std::vector
MyVector() : myVector({}) {} // constructor predeterminado
// ... otros métodos ...
};
```
Esto también le permitirá crear instancias de `MyVector` sin ningún argumento, y el objeto se construirá correctamente.