#include<string>
#include<iostream>
using namespace std;
struct string3
{
string str1;
string str2;
string str3;
string3(const char* s1,const char* s2,const char* s3):
str1(s1),
str2(s2),
str3(s3)
{};
};
bool scom(string3 lhs,string3 rhs)
{
if (lhs.str1!=rhs.str1)
return lhs.str1<rhs.str1;
if (lhs.str2!=rhs.str2)
return lhs.str2<rhs.str2;
return lhs.str3<rhs.str3;
};
int main()
{
vector<string3> vs;
string3 tmp("sdfsd","2316","4587");
vs.push_back(tmp);
tmp.str1="PPPP";
vs.push_back(tmp);
tmp.str3="3333";
vs.push_back(tmp);
tmp.str2="0000";
vs.push_back(tmp);
vector<string3>::iterator iter;
cout<<"排序前:"<<endl;
for(iter=vs.begin();iter!=vs.end();++iter)
cout<<(*iter).str1<<"\t"<<(*iter).str2<<"\t"<<(*iter).str3<<"\t"<<endl;
sort(vs.begin(),vs.end(),scom) ;
cout<<"排序後:"<<endl;
for(iter=vs.begin();iter!=vs.end();++iter)
cout<<(*iter).str1<<"\t"<<(*iter).str2<<"\t"<<(*iter).str3<<"\t"<<endl;
return 0;
}