Linux C++ 中使用 vector 存储和删除结构体示例
在 Linux C++ 中,可以使用 vector 容器来存储结构体。下面是一个示例,展示了如何使用 vector 存储结构体、删除结构体以及一些其他操作:
#include <iostream>
#include <vector>
struct MyStruct {
int id;
std::string name;
};
int main() {
std::vector<MyStruct> myVector;
// 添加结构体到 vector
myVector.push_back({1, "John"});
myVector.push_back({2, "Jane"});
myVector.push_back({3, "Alice"});
// 遍历 vector 并打印结构体
for (const auto& s : myVector) {
std::cout << "ID: " << s.id << ", Name: " << s.name << std::endl;
}
// 删除指定结构体
for (auto it = myVector.begin(); it != myVector.end(); ++it) {
if (it->id == 2) {
myVector.erase(it);
break;
}
}
std::cout << "After deletion:" << std::endl;
for (const auto& s : myVector) {
std::cout << "ID: " << s.id << ", Name: " << s.name << std::endl;
}
return 0;
}
此示例中,我们首先定义了一个结构体 MyStruct,其中包含 id 和 name 两个成员变量。然后,我们创建了一个 std::vector<MyStruct> 类型的 vector 容器 myVector。
接下来,我们使用 push_back 函数将几个结构体添加到 vector 中。然后,我们使用范围 for 循环遍历 vector,并打印每个结构体的 id 和 name。
在删除结构体方面,我们使用了一个迭代器 it 来遍历 vector,并找到 id 为 2 的结构体。一旦找到匹配的结构体,我们使用 erase 函数将其从 vector 中删除。
最后,我们再次遍历 vector,并打印剩余的结构体。
请注意,这只是一个简单的示例,用于演示如何使用 vector 存储和删除结构体。在实际应用中,可能需要更复杂的操作和逻辑来处理结构体的存储和删除。
原文地址: http://www.cveoy.top/t/topic/egh8 著作权归作者所有。请勿转载和采集!