vector里面可以放一个结构体吗
时间: 2024-05-05 15:15:38 浏览: 21
是的,vector可以存储任何类型的数据,包括结构体。例如,以下是一个存储结构体的vector示例:
```c++
#include <iostream>
#include <vector>
using namespace std;
struct Person {
string name;
int age;
};
int main() {
vector<Person> people;
Person p1 = {"Alice", 25};
Person p2 = {"Bob", 30};
people.push_back(p1);
people.push_back(p2);
for (int i = 0; i < people.size(); i++) {
cout << "Name: " << people[i].name << ", Age: " << people[i].age << endl;
}
return 0;
}
```
输出结果:
```
Name: Alice, Age: 25
Name: Bob, Age: 30
```
相关问题
如何用vector容器往一个结构体中填入数据
可以使用push_back()函数将元素添加到vector容器中,然后使用结构体对象的成员变量来存储vector中的数据。例如:
```c++
#include <vector>
#include <iostream>
struct Student {
int id;
std::string name;
int age;
};
int main() {
std::vector<Student> students;
students.push_back({1, "Alice", 18});
students.push_back({2, "Bob", 19});
for (auto& s : students) {
std::cout << "id: " << s.id << ", name: " << s.name << ", age: " << s.age << std::endl;
}
return 0;
}
```
这段代码中,我们定义了一个结构体Student,然后使用vector容器来存储多个学生信息。在main函数中,我们使用push_back()函数将两个学生信息添加到vector中。最后,我们使用for循环遍历vector容器,并输出里面的学生信息。
c++怎么在vector里添加自定义结构体,自定义结构体包含一个类对象和一个整形
可以使用类似于以下代码的方式向 `vector` 中添加自定义结构体:
```cpp
#include <vector>
// 自定义结构体
struct MyStruct {
MyClass myClassObj;
int myInt;
};
int main() {
std::vector<MyStruct> myVector;
// 创建一个 MyStruct 对象并添加到 vector 中
MyStruct myStructObj;
myStructObj.myClassObj = MyClass(); // 初始化 myClassObj
myStructObj.myInt = 123;
myVector.push_back(myStructObj);
// 或者直接在 push_back 中初始化 MyStruct 对象
myVector.push_back({MyClass(), 456});
return 0;
}
```
其中 `MyClass` 是自定义类,你需要根据实际情况填写。
相关推荐
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.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)