Wofür wird der someType-Standardkonstruktor verwendet, während vector <someType> explizit instanziiert wird?

Es ist eine Übung vonC ++ Primer 5th Edition:

Übung 16.26: Angenommen, NoDefault ist eine Klasse ohne Standardkonstruktor, können wir sie explizit instanziierenvector<NoDefault>? Wenn nein, warum nicht? S.677

Ich weiß, dass es nicht kompiliert, wenn KlasseNoDefault hat keinen Standardkonstruktor, kann aber den Grund nicht erklären. Kann mir jemand sagen, wie der Standardkonstruktor beim expliziten Instanziieren verwendet wirdtemplate class std::vector<NoDefault> ?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage