个数,元素值指定每个元素的初始值】
vector对象动态增长 :
vector 对象(以及其他标准库容器对象)的重要属性就在于 可以在运行时高效地添加元素。
【注意:因为
vector 增长的效率高
,在元素值已知的情况下,最好是动态地添加元素。】
值初始化:
如果没有指定元素的初始化式,那么标准库将自行提供一个元素初始值进行,具体值为何,取决于存储在vector 中元素的数据类型。
如果为int型数据,那么标准库将用 0 值创建元素初始化式;
如果 vector 保存的是含有构造函数的类类型(如 string)的元素,标准库将用该类型的默认构造函数创建元素初始化式;
元素类型可能是没有定义任何构造函数的类类型。这种情况下,标准库仍产生一个带初始值的对象,这个对象的每个成员进行了值初始化。
#include <iostream>
#include <string>
#include <vector>
int main()
{
std::vector<int> a;
std::vector<int> b(a);
std::vector<int> c(10, 23);
std::vector<std::string> svec(10, "null");
std::vector<std::string> svec2(10, "hi!");
std::vector<std::string> svec3(10);
return 0;
}
注意,没有=号!
vector对象操作方法
和string类似!
.v.empty()
Returns true if v is empty; otherwise returns false如果 v 为空,则返回 true,否则返回 false。
.v.size()
Returns number of elements in v返回 v 中元素的个数。
【注意:1、返回相应 vector 类定义的size_type 的值,和string类似。2、使用 size_type 类型时,必须指出该类型是在哪里定义的。vector 类型总是包括总是
包括 vector 的元素类型 vector<int>::size_type
】
v.push_back(t)
Adds element with value t to end of v在 v 的末尾增加一个值为 t 的元素。以下为例子:
#include <iostream>
#include <string>
#include <cctype>
#include <vector>
int main()
{
// read










