有关C++ sort算法的问题
#include <iostream>#include <vector>
#include <algorithm>
using namespace std;
class Sales_data
{
public:
Sales_data(string s):bookIno(s) {}
string isbn()
{
return bookIno;
}
private:
string bookIno;
};
bool compareIsbn(Sales_data& data1,Sales_data& data2)
{
return data1.isbn()<data2.isbn();
}
int main()
{
vector<Sales_data> vec={Sales_data("bb"),Sales_data("dd"),Sales_data("aa"),Sales_data("cc")};
sort(vec.begin(),vec.end(),compareIsbn);
for(auto c:vec)
cout<<c.isbn()<<" ";
return 0;
}
程序为什么不对,主要就是sort那里该怎么改?