vector对自定义类中按照数组索引对应的值进行排序的问题?

自定义类如下:classC{public:inta[100];intx;inty;};对有n个C对象组成的vector<C>排序时,按照给的索引index对应的a[ind... 自定义类如下:
class C
{
public:
int a[100];
int x;
int y;
};
对有n个C对象组成的vector<C>排序时,按照给的索引index对应的a[index]作为比较指标进行排序,请问如何实现。使用sort貌似不行,因为不论是采用重载operator<还是使用自定义的lessthan比较函数,其中都无法传入一个参数(int index)来进行。不知道有没有大牛能够帮忙解决这个问题。
展开
 我来答
流月星寒
2013-12-22 · TA获得超过638个赞
知道小有建树答主
回答量:648
采纳率:0%
帮助的人:575万
展开全部
用qsort
int cmp ( const void *m,const void *n)
{
return (*(data *)m).a[index]-(*(data *)n).a[index];
}
实验可行
追问
index作为参数怎么传入
追答
qsort模版 然后自己写个比较函数 index定义为全局变量.......
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式