struct MyStruct
{
AnsiString Date;
TDate ToDate()const{return StrToDate(Date);}
};
bool aa(const MyStruct &r,const MyStruct &t)
{
return r.ToDate() < t.ToDate();
}
//#include<iostream>
//#include<string>
//#include<deque>
#include<algorithm>
void __fastcall TMainForm::Sort1Click(TObject *Sender)
{
print->Clear();
deque<MyStruct> z;
MyStruct m;
DateSeparator = '/'; //设置日期分隔符
m.Date = "2010/06/11";
z.push_back(m);
m.Date = "2010/07/11";
z.push_back(m);
m.Date = "2010/05/2";
z.push_back(m);
m.Date = "2010/06/11";
z.push_back(m);
m.Date = "2011/06/11";
z.push_back(m);
deque<MyStruct>::iterator i = z.begin();
while(i != z.end())
{
print->Lines->Add(i[0].Date);
++i;
}
print->Lines->Add("-------------Sorted------------");
sort(z.begin(),z.end(),aa);
i = z.begin();
while(i != z.end())
{
print->Lines->Add(i[0].Date);
++i;
}
}