我可以使用stl sort对c ++中的结构进行排序

时间:2012-10-31 11:53:13

标签: sorting stl structure

我试图在C ++中使用stl sort对结构进行排序。但我得到一些错误。是不是我们不能使用stl排序在c ++中对结构进行排序,或者是我在实现中的错误,如果我的错误让我知道更正。

这是代码(非常小:) :)

#include<iostream>
#include<algorithm>
using namespace std;
struct log {
       int sd;
       int ed;
} log[1000];
bool key(int i,int j) {
 return (log[i].ed<log[j].ed);
}
int main() {
int n,i;
cin>>n;
sort(log,log+n,key);
for (i=0;i<n;i++) cin>>log[i].sd>>log[i].ed;
for (i=0;i<n;i++) cout<<log.sd<<","<<log.ed<<endl;
system("PAUSE");
}

1 个答案:

答案 0 :(得分:0)

是的,你可以。但是你的比较器应该有两个const log &(不是int)个参数。