"掌握vector的基本用法及常见函数,轻松操作动态数组"

版权申诉
0 下载量 53 浏览量 更新于2024-04-04 收藏 289KB PDF 举报
容器vector称做向量,相当于可以动态改变大小的数组,使用方法简单。vector里提供了大量的函数,许多函数在STL的不同容器里用法基本相同,熟悉了vector再掌握其容器会变得简单。下面将介绍vector的常用方法。 首先,可以通过以下方式进行定义和赋值: ```cpp vector<int> viCount; // 定义一个空的整型vector vector<int> viLen[10]; // 定义一个大小为10的整型vector数组 vector<string> vsZqdm; // 定义string型的vector // 定义一个struct的vector typedef struct { char szZqdm[7]; char szZqmc[9]; } ZQXX; vector<ZQXX> vZqdm; ``` 需要注意的是,在定义`vector<string>`后,VC6里可能会出现4786的警告信息,可以使用相关方法来避免。接下来,介绍一些vector的常用方法。 1. `push_back()`: 在vector的末尾添加一个元素。 ```cpp vector<int> vec; vec.push_back(1); ``` 2. `pop_back()`: 删除vector末尾的一个元素。 ```cpp vector<int> vec = {1, 2, 3}; vec.pop_back(); ``` 3. `size()`: 返回vector中元素的个数。 ```cpp vector<int> vec = {1, 2, 3}; int size = vec.size(); // size is 3 ``` 4. `clear()`: 清空vector中的所有元素。 ```cpp vector<int> vec = {1, 2, 3}; vec.clear(); // vector becomes empty ``` 5. `empty()`: 返回vector是否为空,为空返回true,否则返回false。 ```cpp vector<int> vec; bool isEmpty = vec.empty(); // isEmpty is true ``` 6. `at()`: 访问vector中的指定位置的元素。 ```cpp vector<int> vec = {1, 2, 3}; int element = vec.at(1); // element is 2 ``` 7. `insert()`: 在vector的指定位置插入一个元素。 ```cpp vector<int> vec = {1, 3, 4}; vec.insert(vec.begin() + 1, 2); // vector becomes {1, 2, 3, 4} ``` 8. `erase()`: 删除vector中指定位置的元素。 ```cpp vector<int> vec = {1, 2, 3}; vec.erase(vec.begin() + 1); // vector becomes {1, 3} ``` 9. `begin()`和`end()`: 获取vector的起始和结束迭代器。 ```cpp vector<int> vec = {1, 2, 3}; auto start = vec.begin(); // start points to the beginning auto end = vec.end(); // end points to the end ``` 以上是vector的一些常用方法,掌握了这些方法可以更加灵活地操作vector容器。通过不断练习和实践,对vector的使用会变得更加熟练,帮助提升编程效率和准确性。愿以上内容可以帮助你更好地理解和应用vector容器。