C++vector储存对象
时间: 2023-06-16 16:02:35 浏览: 118
c++ 实验课作业,Vector 缓存所有数据
C++中的vector容器可以存储对象,使用方法与存储基本数据类型类似。首先需要定义一个类,然后在vector中声明一个该类的对象即可。
例如,假设我们有一个Person类,包括姓名和年龄两个成员变量,可以这样定义一个vector来存储多个Person对象:
```c++
#include <iostream>
#include <vector>
using namespace std;
class Person {
public:
string name;
int age;
Person(string n, int a): name(n), age(a) {}
};
int main() {
vector<Person> people; // 声明一个存储Person对象的vector
// 添加多个Person对象
people.push_back(Person("Tom", 20));
people.push_back(Person("Alice", 25));
people.push_back(Person("Bob", 30));
// 遍历vector中的所有Person对象,并输出姓名和年龄
for (int i = 0; i < people.size(); i++) {
cout << "Name: " << people[i].name << ", Age: " << people[i].age << endl;
}
return 0;
}
```
输出结果为:
```
Name: Tom, Age: 20
Name: Alice, Age: 25
Name: Bob, Age: 30
```
需要注意的是,在定义存储对象的vector时,需要在尖括号中指定该对象的类型,即类名。在使用vector的push_back()函数添加对象时,需要传入该类的构造函数的参数列表,以创建一个新的对象并添加到vector中。在遍历vector中的所有对象时,可以使用下标运算符[]来访问每个对象的成员变量。
阅读全文