#include"iostream"using namespace std;#include"vector"// 自定义类classStudent{};intmain(){// 1. 默认初始化// 创建一个空的 vector 容器 , 元素类型是 int 类型vector<int>vec;// 2. 创建一个 vector 动态数组容器// 该容器中 有 3 个元素 , 每个元素值为 int 类型值 1vector<int>vec1(3,1...
vector<int> a(5,1);//通过a初始化vector<int> b(a); (5)通过insert初始化 //insert初始化方式将同类型的迭代器对应的始末区间(左闭右开区间)内的值插入到vector中vector<int> a(6,6); vecot<int>b;//将a[0]~a[2]插入到b中,b.size()由0变为3b.insert(b.begin(), a.begin(), a.begin...
1. 采用构造函数 vector<vector<int>> vec(10, vector<int>(8)); //10行8列,全部初始化为零 2.添加元素(每次添加一行) int a[] = { 1, 2, 3, 4 }; vector<int> ivec(a, a + 4);//数组初始化vector,见最下面(也可以不用数组初始化,直接{}初始化vector) vector<vector<int> > m; m....
1.vector<int> vec{1, 2, 3}; // 初始化列表(c++11) ( 1_1.vector<int> vec; vec.assign({1, 2, 3}) ; ) 2.vector<int> vec = {1, 2, 3}; // 赋值(c++11) ( 2_1.vector<int> vec; vec = {1, 2, 3}; ) 3.vector<int> vec(vec1); // 使用另一个vector初始化; 4.ve...
上述代码中,我们通过在创建Vector时指定容量大小为5,初始化了一个具有固定容量的Vector对象。然后使用add()方法向Vector中添加了5个整数。最后使用增强for循环遍历Vector中的元素,并打印出来。 向Vector赋值 除了使用add()方法一个一个地向Vector中添加元素,还可以使用addAll()方法一次性将一个集合中的元素添加到Vecto...
vector<int> nums(3); // 创建一个大小为 3 的 vector,但未初始化元素 int value = nums[0]; // 未初始化访问错误,应该先对元素进行初始化 1. 2. 复制/赋值错误:尝试将一个vector直接赋值给另一个vector时,可能会导致意外的结果,因为这样做会触发元素的复制操作,可能造成不必要的开销。
// 3、方式三(初始化) vector<int> v3(v2); // 4、方式4(初始化) vector<int> v4(v2.begin(),v2.end()); // 5、方式5(初始化) 给n个elem vector<int> v5(10,2); 1.2、赋值操作 // 将v5区间的数据拷贝给v4 v4.assign(v5.begin(),v5.end()); ...
1、在默认的构造函数中对变量进行了赋值初始化操作 AdItem() { x_ = 0; y_ = 0; z_ = 0; } 2、对构造函数使用default关键字 AdItem() = default; 修改之后,再次编译,运行,未初始化版本和初始化版本的性能结果基本一致,进一步验证了我们的猜想lazy allocation引起的性能差异。
使用循环逐个赋值: vector<vector<int>> matrix(3, vector<int>(3, 0)); // 3x3二维vector,初始值为0 for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { matrix[i][j] = i * 3 + j; // 给每个元素赋值 } } 复制代码 使用初始化列表: vector<vector<int>>...