Хотя явно используется экземпляр вектора <someType>, для чего используется конструктор по умолчанию someType?

Это упражнение отC ++ Primer 5-е издание:

Упражнение 16.26. Предполагая, что NoDefault является классом, у которого нет конструктора по умолчанию, можем ли мы явно создать его экземплярvector<NoDefault>? Если нет, то почему? P.677

Я знаю, что это не компилируется, если классNoDefault не имеет конструктора по умолчанию, но не может объяснить причину. Может кто-нибудь сказать мне, как конструктор по умолчанию используется при явной реализацииtemplate class std::vector<NoDefault> ?

Ответы на вопрос(3)

Ваш ответ на вопрос