c++中,A是一个数据类,vector<A> a,a的增删改查元素如何实现
时间: 2024-02-27 07:59:05 浏览: 80
对于向量 vector<A> a 来说,可以使用以下方法进行增删改查元素:
1. 增加元素: 调用 a.push_back(obj) 函数,将 obj 添加到 a 向量的末尾。
2. 删除元素: 调用 a.erase(a.begin()+index) 函数,删除 a 向量中下标为 index 的元素。
3. 修改元素: 直接通过下标访问 a[i],修改 a 向量中下标为 i 的元素。
4. 查找元素: 可以使用迭代器进行遍历查找,也可以使用 STL 中的 find 函数进行查找。
例如,对于一个存储学生信息的向量:
```
struct Student {
string name;
int age;
};
vector<Student> students;
```
可以通过以下方式实现增删改查元素:
1. 增加元素:
```
Student s1 = {"Tom", 18};
students.push_back(s1);
```
2. 删除元素:
```
students.erase(students.begin() + 1);
```
3. 修改元素:
```
students[0].name = "Jerry";
```
4. 查找元素:
```
for(auto it = students.begin(); it != students.end(); ++it) {
if(it->name == "Tom") {
cout << "Found student: " << it->name << ", " << it->age << endl;
break;
}
}
```
或者使用 find 函数查找:
```
auto it = find_if(students.begin(), students.end(), [](const Student& s) { return s.name == "Tom"; });
if(it != students.end()) {
cout << "Found student: " << it->name << ", " << it->age << endl;
}
```
阅读全文