Como corrigir o erro “Nenhum construtor padrão” em C++
"Desviado" neste contexto significa que o comportamento esperado do código mudou e não segue mais o padrão esperado. Em outras palavras, o código se desviou do caminho pretendido.
O problema que você está enfrentando é causado pelo fato de `std::vector` não ter um construtor padrão, então quando você tenta criar uma instância de `MyVector ` sem fornecer nenhum argumento, o compilador não será capaz de construir o objeto.
Para corrigir esse problema, você pode adicionar um construtor padrão à sua classe `MyVector` que inicializa o vetor com uma lista vazia:
```
class MyVector {
std::vector
public:
MyVector() : myVector{} {} // construtor padrão
// ... outros métodos ...
};
```
Isso permitirá que você crie instâncias de `MyVector` sem quaisquer argumentos, e o objeto será construído corretamente.
Alternativamente, você também pode adicionar um construtor que não aceita argumentos e inicializa o vetor com uma lista vazia:
```
class MyVector {
std::vector< int> myVector;
public:
MyVector(const std::vector
MyVector() : myVector({}) {} // construtor padrão
// ... outros métodos ...
};
```
Isso também permitirá que você crie instâncias de `MyVector` sem quaisquer argumentos, e o objeto será construído corretamente.