1

C++でstlsortを使用して構造をソートしようとしていました。しかし、エラーが発生します。stlsortを使用して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");
}
4

1 に答える 1

0

はい、できます。ただし、コンパレータは2つのconst log &(ではなくint)引数を取る必要があります。

于 2012-10-31T11:55:32.543 に答える