mobile theme mode icon
theme mode light icon theme mode dark icon
speech play
speech pause
speech stop

Як виправити помилку «Немає конструктора за замовчуванням» у C++

«Відхилення» в цьому контексті означає, що очікувана поведінка коду змінилася, і він більше не відповідає очікуваному шаблону. Іншими словами, код відхилився від наміченого шляху.

Проблема, з якою ви зіткнулися, спричинена тим фактом, що `std::vector` не має конструктора за замовчуванням, тому, коли ви намагаєтесь створити екземпляр `MyVector ` без надання будь-яких аргументів компілятор не зможе побудувати об’єкт.

Щоб вирішити цю проблему, ви можете додати конструктор за замовчуванням до свого класу `MyVector`, який ініціалізує вектор порожнім списком:
```
class MyVector {
std::vector myVector;
public:
MyVector() : myVector{} {} // конструктор за замовчуванням
// ... інші методи ...
};
```
Це дозволить вам створювати екземпляри `MyVector` без будь-яких аргументів, і об’єкт буде створено правильно.

Крім того, ви також можете додати конструктор, який не приймає аргументів і ініціалізує вектор порожнім списком:
```
class MyVector {
std::vector< int> myVector;
public:
MyVector(const std::vector&) {} // конструктор за замовчуванням
MyVector() : myVector({}) {} // конструктор за замовчуванням
// ... інші методи ...
};
```
Це також дозволить вам створювати екземпляри `MyVector` без будь-яких аргументів, і об’єкт буде створено правильно.

Knowway.org використовує файли cookie, щоб надати вам кращий сервіс. Використовуючи Knowway.org, ви погоджуєтесь на використання файлів cookie. Для отримання детальної інформації ви можете переглянути текст нашої Політики щодо файлів cookie. close-policy