mobile theme mode icon
theme mode light icon theme mode dark icon
Random Question Losowy
speech play
speech pause
speech stop

Jak naprawić błąd „Brak domyślnego konstruktora” w C++

„Odchylone” w tym kontekście oznacza, że ​​oczekiwane zachowanie kodu uległo zmianie i nie jest już zgodne z oczekiwanym wzorcem. Innymi słowy, kod odszedł od zamierzonej ścieżki.

Problem, przed którym stoisz, jest spowodowany faktem, że `std::vector` nie ma domyślnego konstruktora, więc gdy próbujesz utworzyć instancję `MyVector ` bez podania żadnych argumentów kompilator nie będzie mógł skonstruować obiektu.

Aby rozwiązać ten problem, możesz dodać domyślny konstruktor do swojej klasy `MyVector`, który inicjuje wektor pustą listą:
```
class MyVector {
std::vector myVector;
public:
MyVector() : myVector{} {} // domyślny konstruktor
// ... inne metody ...
};
```
To pozwoli Ci tworzyć instancje `MyVector` bez żadnych argumentów, a obiekt zostanie zbudowany poprawnie.

Alternatywnie możesz także dodać konstruktor, który nie przyjmuje argumentów i inicjuje wektor pustą listą:
```
class MyVector {
std::vector< int> myVector;
public:
MyVector(const std::vector&) {} // domyślny konstruktora MyVector() : myVector({}) {} // domyślny konstruktor
// ... inne metody ...
};
```
Umożliwi to także utworzenie instancji `MyVector` bez żadnych argumentów, a obiekt zostanie poprawnie skonstruowany.

Knowway.org używa plików cookie, aby zapewnić Ci lepszą obsługę. Korzystając z Knowway.org, wyrażasz zgodę na używanie przez nas plików cookie. Aby uzyskać szczegółowe informacje, zapoznaj się z tekstem naszej Zasad dotyczących plików cookie. close-policy