Sie rufen nicht den Konstruktor auf, der den Vektor auf eine anfängliche Größe setzt.
%Vor% Das obige erzeugt ein vector
mit einem einzelnen int
Element mit dem Wert size
. Sie rufen diesen Konstruktor auf:
Die braced-initializer-Liste wird als std::initializer_list<size_type>
abgeleitet und dann muss eine einschränkende Konvertierung durchgeführt werden, da vector
selbst int
s enthält.
Um die anfängliche Größe des Vektors festzulegen, verwenden Sie:
%Vor% Auch der von Ihnen aufgelistete vector
-Konstruktor existiert nicht mehr, er wurde in C ++ 11 entfernt und durch die folgenden zwei Konstruktoren ersetzt:
cppreference.com ist eine viel bessere Referenz im Vergleich zu cplusplus.com.
Tags und Links c++ c++11 vector initializer-list std