vector 结构体
时间: 2023-11-14 16:07:32 浏览: 149
vector 是 C++ STL 中的一个容器,可以看作是一个动态数组。它可以自动调整大小,支持随机访问,插入和删除元素等操作。
vector 的定义方式如下:
```c++
#include <vector>
using namespace std;
vector<int> vec; // 定义一个空的 vector
vector<int> vec2(10); // 定义一个大小为 10 的 vector,每个元素都是默认值 0
vector<int> vec3(5, 2); // 定义一个大小为 5 的 vector,每个元素都是值为 2
```
可以使用 push_back() 函数向 vector 中添加元素:
```c++
vec.push_back(1);
vec.push_back(2);
vec.push_back(3);
```
可以使用下标运算符 [] 或者 at() 函数访问 vector 中的元素:
```c++
cout << vec[0] << endl; // 输出 1
cout << vec.at(1) << endl; // 输出 2
```
相关问题
vector结构体排序
以下是使用lambda表达式对vector结构体进行排序的示例代码:
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct Student {
string name;
int score;
};
int main() {
vector<Student> students = {{"Tom", 80}, {"Jerry", 90}, {"Alice", 70}};
// 按照分数降序排序
sort(students.begin(), students.end(), [](const Student& a, const Student& b) {
return a.score > b.score;
});
// 输出排序结果
for (const auto& student : students) {
cout << student.name << " " << student.score << endl;
}
return 0;
}
```
上述代码中,我们定义了一个结构体`Student`,包含学生姓名和分数两个成员变量。然后我们定义了一个`vector`类型的容器`students`,其中存储了三个学生的信息。接着,我们使用`sort`函数对`students`进行排序,排序的依据是学生的分数,按照降序排列。最后,我们遍历排序后的`students`容器,输出每个学生的姓名和分数。
c++ vector 结构体
C++ 中的 vector 是一个动态数组容器,可以存储大量的数据。它通过动态地分配内存空间来自动处理大小调整。结构体是一种用户定义的数据类型,它可以组合不同类型的数据成员。它是一种非常有用的工具,可以方便程序员对数据进行处理和管理。结构体可以包含多个成员,每个成员可以是不同的类型,如 int、float、char、double 等。通过使用结构体和 vector ,可以轻松地管理和操作复杂的数据结构。
阅读全文