请问c++中按对象中某个整型数据进行排序应该怎么排
在C++中,可以使用std::sort函数来对对象进行排序。如果要按照对象中的某个整型数据进行排序,可以自定义一个比较函数,然后将该函数作为参数传递给std::sort函数。
下面是一个示例代码:
#include <iostream>
#include <algorithm>
#include <vector>
struct MyObj {
int data;
};
bool compareByData(const MyObj& obj1, const MyObj& obj2) {
return obj1.data < obj2.data;
}
int main() {
std::vector<MyObj> objects = {{5}, {2}, {8}, {1}, {3}};
std::sort(objects.begin(), objects.end(), compareByData);
for(const auto& obj : objects) {
std::cout << obj.data << " ";
}
return 0;
}
这段代码通过自定义的compareByData函数来比较两个MyObj对象的data成员变量,然后将该函数作为参数传递给std::sort函数。最后输出排序后的结果。
输出结果为:1 2 3 5
原文地址: https://www.cveoy.top/t/topic/iiU7 著作权归作者所有。请勿转载和采集!