vector怎么保存对象
时间: 2024-04-02 18:11:03 浏览: 13
可以使用STL中的vector来保存对象。vector是一个动态数组,可以存储各种类型的值,包括对象。下面是一个保存对象的示例:
假设有一个Person类:
```c++
class Person {
public:
string name;
int age;
};
```
现在想要使用vector来保存多个Person对象,可以按照以下方式进行:
```c++
#include <iostream>
#include <vector>
using namespace std;
class Person {
public:
string name;
int age;
};
int main() {
vector<Person> people;
Person p1;
p1.name = "Alice";
p1.age = 20;
Person p2;
p2.name = "Bob";
p2.age = 25;
people.push_back(p1);
people.push_back(p2);
for (auto p : people) {
cout << "Name: " << p.name << ", Age: " << p.age << endl;
}
return 0;
}
```
上述代码将创建一个vector对象people,并向其中添加两个Person对象p1和p2。最后,使用for循环遍历vector中的所有元素,并输出每个Person对象的名称和年龄。
请注意,当我们向vector中添加元素时,实际上是将对象的副本添加到vector中。因此,在添加对象时,需要保证类中定义的复制构造函数是正确的。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)