----------------
user: 总结C++中vector的用法
----------------
assistant: 在 C++ 中,vector 是一个模板类,用于定义动态数组(也称为可变大小数组)。使用 vector 类型时,可以指定其模板参数,以定义向量中元素的类型。以下是 vector 类的一些常见用法:创建 vector 对象:可以使用默认构造函数创建一个空向量,或使用带有元素数量和元素值的构造函数创建一个带有初始值的向量,如下所示:
vector<int> myVec; // 创建一个空向量
vector<int> myVec2(5, 0); // 创建一个包含5个元素,每个元素的值为0的向量
访问 vector 中的元素:可以使用下标运算符 [] 或 at() 函数访问 vector 中的元素,如下所示:
myVec[0] = 10; // 将第一个元素的值设置为10
myVec.at(1) = 20; // 将第二个元素的值设置为20
int val = myVec[2]; // 获取第三个元素的值
在 vector 末尾添加元素:可以使用 push_back() 函数在 vector 的末尾添加元素,如下所示:
myVec.push_back(30); // 在末尾添加一个值为30的元素
获取 vector 的大小:可以使用 size() 函数获取 vector 中元素的数量,如下所示:
int count = myVec.size(); // 获取向量中元素的数量
迭代 vector 中的元素:可以使用 for 循环或迭代器来遍历 vector 中的元素,如下所示:
// 使用 for 循环遍历 vector
for (int i = 0; i < myVec.size(); i++) {
cout << myVec[i] << " ";
}
// 使用迭代器遍历 vector
for (vector<int>::iterator it = myVec.begin(); it != myVec.end(); it++) {
cout << *it << " ";
}
清空 vector 中的元素:可以使用 clear() 函数删除 vector 中的所有元素,如下所示:
myVec.clear(); // 删除 vector 中的所有元素
以上是 vector 类的一些常见用法。使用 vector,可以很方便地操作动态数组,而不需要手动管理内存。
------------------------------------------------------------------------------------
user: 怎么使用vector创建一个二维整形数组
-------------------------------------------------------------------------------------
#include <vector>
using namespace std;
int main() {
// 创建一个 3 行 4 列的二维数组
vector<vector<int> > myVec(3, vector<int>(4, 0));
// 对二维数组进行赋值
myVec[0][0] = 1;
myVec[1][2] = 2;
myVec[2][1] = 3;
// 输出二维数组
for (int i = 0; i < myVec.size(); i++) {
for (int j = 0; j < myVec[i].size(); j++) {
cout << myVec[i][j] << " ";
}
cout << endl;
}
return 0;
}
在上述代码中,我们首先创建了一个大小为 3 行 4 列的二维数组 myVec
,并将其所有元素初始化为 0。然后我们使用下标运算符 []
访问 myVec
中的元素,对其进行赋值。最后使用双重循环遍历整个二维数组,输出其所有元素。
值得注意的是,使用 vector
类型的嵌套可以灵活地创建任意维度的数组。例如,我们可以创建一个三维数组,方法与上述二维数组类似,只需要在嵌套 vector
中再嵌套一个 vector
即可。