对weapon*类型的vector数组里面的元素按照id排序
时间: 2023-11-29 15:06:51 浏览: 107
vector 排序
5星 · 资源好评率100%
对于`weapon*`类型的vector数组,可以通过定义一个比较函数来实现按照id排序。具体的实现代码如下:
```c++
#include <algorithm>
#include <vector>
// 定义weapon结构体
struct weapon {
int id;
// 其他成员变量
};
// 定义比较函数,按照id从小到大排序
bool cmp(const weapon* w1, const weapon* w2) {
return w1->id < w2->id;
}
int main() {
// 假设weapons为包含weapon*类型元素的vector数组
std::vector<weapon*> weapons;
// 排序
std::sort(weapons.begin(), weapons.end(), cmp);
return 0;
}
```
需要注意的是,由于vector数组中的元素是指向`weapon`结构体的指针,所以在比较函数中需要通过`->`符号来访问`weapon`结构体中的`id`成员变量。
阅读全文