c vector自定義資料型別做排序

2021-09-26 10:29:55 字數 587 閱讀 1153

前言

在c++語言中,vector型別做排序主要使用sort()系統全域性函式,預設只是針對內建資料(int,string)型別排序:

sort(vector.begin(), vector.end());
但如果是使用自定義型別,程式編譯時就會報錯,那麼要怎麼解決這一問題呢?

解決之道–案例

#include using namespace std;

#include #include #include class person

string m_name;

int m_age;

};bool mycompare(person &v1, person &v2)

void test01()

cout << endl;

}int main()

案例執行結果:
姓名:諸葛,年齡:33

姓名:關羽,年齡:28

姓名:張飛,年齡:25

姓名:劉備,年齡:24

姓名:趙雲,年齡:21

請按任意鍵繼續. . .

自定義資料型別

include include using namespace std typedef double weight,tall struct student int main cout for int i 0 i 4 i return 0 貼上正確的輸出 這裡tall和weight都是自己可以輸入的 ...

C ,vector 自定義型別的排序

c vector的排序 通過過載 方便,看起來好看 還可以自定義比較函式 四個標頭檔案,特別要注意須包含 下面才能用less include include include include using namespace std class cvalue 過載 void operator const...

C map以自定義資料型別做鍵值

template,class a allocator 第乙個引數 key map的關鍵字型別 第二個引數t map的值型別 第三個引數 比較函式compare 仿函式 第四個引數 記憶體配置物件 map內部儲存機制實際是以紅黑樹為基礎,紅黑樹在插入節點時,必須按照大小比較之後在乙個合適的為止進行插入...