第一種方法:
#include "stdafx.h"
#include
#include
#include
using namespace std;
struct assesstypeinfo
bool operator > (const assesstypeinfo& rhs ) const //降序排序時必須寫的函式
}int main()
以上方法就可以實現公升序排序,輸出結果為 1 2 3
降序排序結果3 2 1。
方法2 : 不修改結構體或類的定義部分,我們用函式物件來實現:
#include "stdafx.h"
#include
#include
#include
using namespace std;
struct assesstypeinfo
;bool lessmark(const assesstypeinfo& s1,const assesstypeinfo& s2)
bool greatermark(const assesstypeinfo& s1,const assesstypeinfo& s2)
int main()
VECTOR中pair的排序
vector vec 呼叫排序函式sort sort vec.begin vec.end 預設排序是從小到大,先比較first,在first相等的情況下比較second bool judge const paira,const pairb 通過傳遞乙個函式 judge 給sort函式 注意 judg...
C 中的vector排序問題
最近做的東西,要將vector 中的內容輸出,結果發現有些檔案被交替反覆開啟,所以就想吧vector 中的元素排序,學習中發現下面這篇文章總結的挺好的,分享一下也 c 中當 vector 中的資料型別為基本型別時我們呼叫std sort函式很容易實現 vector中資料成員的公升序和降序排序,然而當...
C 中vector的排序問題
在用vector排序的時候,發現sort 函式有乙個問題,sort排序只會返回排序後的結果,不會返回每個排序後的結果在原來的編號。templatebool cmp const pair x,const pair y templatevoid sortvector vector value,vecto...