//使用库函数排序举例 #include <iostream> #include <string> #include <algorithm>//内有排序库函数 using namespace std; #ifndef person_h_1 //预定义指令 #define person_h_1 class person { public: person(const char* name,int age):name(name),age(age){}//构造函数 friend ostream& operator<<(ostream& o,const person& p)//重载输出 { return o<<p.name<<":"<<p.age<<' '; } friend bool operator <(const person& a,const person& b)//重载小于 { return a.age<b.age; } private: string name; int age; }; #endif template<typename T> void print(T b,T e)//输出数组内容 { bool isnull=true; while (b!=e) { cout<<*b++<<' '; isnull=false; } if(isnull==false) cout<<endl; } int main() { int a[6]={5,8,6,4,9,1}; double b[4]={4.4,3.2,6.7,1.2}; string c[5]={"yeah","are","you","people","good"}; person p[3]={person("ppp",23),person("kkk",21),person("mmm",20)}; sort(a,a+6);//排序 sort(b,b+4); sort(c,c+5); sort(p,p+3); print(a,a+6);//输出 print(b,b+4); print(c,c+5); print(p,p+3); }