std::vector是否有{Initial number of elements}构造函数

Does std::vector have a { Initial number of elements} constructor?

本文关键字:of elements 构造函数 number vector 是否 std Initial      更新时间:2023-10-16

在cplusplus引用中,Perhabs没有{initial number of elements}构造函数。示例如下。

vector<string> svec { 5 }; 
cout << svec.capacity() << endl; // log is 5

但是,有explicit vector (size_type n);构造函数。在这种情况下,这不是{ }大括号。这句话怎么了?

但是,存在显式向量(size_typen);构造函数。在这种情况下,这不是{}大括号。这句话怎么了?

统一的初始化语法意味着,大多数情况下,这两个是相同的:

SomeType objectName(constructor_args);
SomeType objectName{constructor_args};

在某些情况下,花括号也可以用于填充初始化程序列表,但这里的情况并非如此。

实际上,您正在调用第二个构造函数,该构造函数指定了向量应该从中开始的元素数。

C++初始化非常复杂,所以我不会在这里详细介绍,而是敦促您对所有各种初始化语法进行一些相关的阅读。你的C++书应该涵盖它们。