c++ vector用法详解

C++中的vector是一个动态数组容器,可以存储任意类型的元素。它提供了方便的方法来动态地增加或减少数组的大小,同时还能高效地访问和修改数组中的元素。vector被广泛应用于C++编程中,本文将详细介绍vector的使用方法,并提供案例说明。

1. 包含头文件

在使用vector之前,首先需要包含头文件`#include `。

2. 创建和初始化vector

vector的创建和初始化可以有多种方式,下面是一些常见的方法:

- 使用默认构造函数创建一个空的vector,然后使用push_back()函数添加元素:

```cpp

std::vector myVector;

myVector.push_back(10);

myVector.push_back(20);

myVector.push_back(30);

```

- 在创建时指定初始大小和初始值:

```cpp

std::vector myVector(5, 10); // 创建一个包含5个值为10的元素的vector

```

- 使用初始化列表进行初始化:

```cpp

std::vector myVector = {10, 20, 30, 40};

```

- 通过复制另一个vector来创建:

```cpp

std::vector anotherVector(myVector);

```

3. 访问和修改元素

vector通过下标索引来访问和修改元素,索引从0开始。可以使用[]运算符或at()函数来访问元素。如下所示:

```cpp

int value = myVector[0]; // 使用[]运算符访问第一个元素

int value2 = myVector.at(1); // 使用at()函数访问第二个元素

myVector[2] = 50; // 修改第三个元素的值

```

4. 添加和删除元素

vector提供了多种函数来添加和删除元素,包括push_back()、insert()和erase()等。下面是一些常见的方法:

- push_back(): 向vector尾部添加一个元素。

```cpp

myVector.push_back(50);

```

- insert(): 在指定位置插入一个或多个元素。

```cpp

myVector.insert(myVector.begin() + 2, 60); // 在第三个位置插入元素60

myVector.insert(myVector.begin() + 3, 2, 70); // 在第四个位置插入两个元素70

```

- erase(): 删除指定位置的一个或多个元素。

```cpp

myVector.erase(myVector.begin() + 3); // 删除第四个元素

myVector.erase(myVector.begin() + 2, myVector.begin() + 4); // 删除第三个和第四个元素

```

5. 获取vector的大小和容量

可以使用size()函数获取vector的大小,即元素个数。capacity()函数可以获取vector的容量,即当前内部数组的大小。

```cpp

int size = myVector.size();

int capacity = myVector.capacity();

```

6. 遍历vector元素

可以使用迭代器或基于范围的for循环来遍历vector中的元素。

- 使用迭代器:

```cpp

for (std::vector::iterator it = myVector.begin(); it != myVector.end(); ++it) {

int value = *it;

// 处理value

}

```

- 使用基于范围的for循环(C++11及以上版本):

```cpp

for (int value : myVector) {

// 处理value

}

```

7. 实际应用案例

下面是一个实际的案例,演示如何使用vector来存储和操作学生的成绩:

```cpp

#include

#include

struct Student {

std::string name;

int score;

};

int main() {

std::vector students;

students.push_back({"Alice", 80});

students.push_back({"Bob", 90});

students.push_back({"Charlie", 75});

for (const Student& student : students) {

std::cout << student.name << ": " << student.score << std::endl;

}

return 0;

}

```

以上是对C++中vector的使用方法进行详细介绍,包括创建和初始化vector、访问和修改元素、添加和删除元素、获取大小和容量以及遍历vector元素的方法。同时提供了一个实际应用案例来演示vector的使用。希望对你有帮助! 如果你喜欢我们三七知识分享网站的文章, 欢迎您分享或收藏知识分享网站文章 欢迎您到我们的网站逛逛喔!https://www.37seo.cn/

点赞(69) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部