前者是定义了10个vector变量,后者是定义了一个长度为10的vector变量。include <iostream> include <vector> using namespace std;void main(){ vector<int> v1[10];v1[2].push_back(1); //给第2个vector变量压入数据1 vector<int> v2(10);//v2[2].push_back(2); //错误,v2是一个...
int main() { vector<int> v1(20,15); cout << "size: " << v1.size() << endl; cout << "capacity: " << v1.capacity() << endl; return 0; } reserve() 这个函数就是开辟空间的,和string那里是一样的,规则还是一样的. int main() { vector<int> v1(20,15); v1.reserve(10);...
std::vector<int> v(10,20); 表示我定义了一个含有10个元素 ,且每一个元素值都是 int 型的 20 的向量 名字叫 v。 元素的个数 std::vector<int>::size_type count = v.size(); 前面的 std::vector<int>::size_type 表示数据类型 可以理解为无符号整形 查看首位元素 v.front();//返回首元素的...
intmain(){ vector<int> v; v.reserve(10);//保留适当的空间 //加入7个元素 intsize; for(inti=0; i<7; i++) v.push_back(i); try{ // 第一种没有边界检查不会报错,第二种有边界检查会报错, // 这或许是我们使用v.at()的原因吧 intiVal1 = v[7];// not bounds checked - will not...
std::vector<int>v1(10);// 创建一个包含 10 个默认值(0)的 vectorstd::vector<int>v2(10,5);// 创建一个包含 10 个值为 5 的 vector 范围构造函数 代码语言:javascript 复制 template<classInputIterator>vector(InputIterator first,InputIterator last,constallocator_type&alloc=allocator_type()); ...
int age; char name[64]; }; main.cpp #include <iostream> #include "Vector.cpp" #include "Student.h" using namespace std; int main(){ Vector<int> v1(10); Vector<int> v2(10); for (int i=0; i<10 ;i++) { v1[i] = i; ...
vector<int>v={1,2,3,4,5}; // 使用下标运算符修改元素 v[0]=10; // 使用at()函数修改元素 v.at(1)=20; // 输出修改后的元素 for(inti=0;i<v.size();i++){ printf("%d",v[i]); } return0; } 输出结果为: 10 20 3 4 5 删除vector中的元素 可以使用pop_back()函数删除vector中...
一般使用insert方法, 把insert的位置指向结尾位置(因为,insert是插在指定位置前面的)std::vector<int> src;std::vector<int> dest;dest.insert(dest.end(), src.begin(), src.end());
个人理解,这个vector<int>申请的空间是动态的。在你定义vector的时候系统并不知道申请了多大的空间。属于动态申请空间就例如 int *a;a=(int *)malloc(n*sizeof(int));一样,当你调用新的输入的时候(直接输入也应该被重载了的)会分配新的空间达到一个动态调整空间大小的做用。而对于2维向量,...
翻译:“之所以选择这个名字,是因为Alex Stepanov作为C++标准库的设计者当初在寻找一个可以与内置数组类型...