c++的string已經定義了各種比較運算子。
c風格的字串(char陣列)則採用strcmp比較字串大小。詳細見下
#include #include#include
using
namespace
std;
//先按成績比較
//成績相同按名字,
//名字相同按年齡
struct
student
};int
main()
; student y = ;
printf(
"%s\n
", x < y ? "
yes" : "no"
);
return0;
}
#include #include#include
using
namespace
std;
struct
structname } buf[5];
void
printbuf()
}int
main()
; buf[
1] = ;
buf[
2] = ;
buf[
3] = ;
buf[
4] = ;sort(buf, buf+ 5);printbuf();
return0;
}
#include #include#include
using
namespace
std;
struct
structname buf[5];
void
printbuf()
}bool cmp(const structname& a, const structname&b)
int
main()
; buf[
1] = ;
buf[
2] = ;
buf[
3] = ;
buf[
4] = ;sort(buf, buf+ 5, cmp);printbuf();
return0;
}
C 過載運算子
運算子過載是一種形式的c 多型。在c 中,編譯器有能力把乙個由資料 物件和操作符共同組成的表示式,解釋為對乙個全域性或成員函式的呼叫。該全域性或成員函式被稱為操作符函式,通過重定義操作符函式,可以實現針對自定義型別 結構,類 的運算法則,並使之與內建型別一樣參與各種表示式。過載運算子可使 看起來更加...
C 過載運算子
本文主要講述加號運算子 自增運算子 流提取運算子運 流插入運算子 先給出vector類 class vector 建構函式 vector const vector v 拷貝建構函式 vector operator const vector v 過載 vector operator 過載前置自增運算子...
C 過載運算子
過載的運算子是帶有特殊名稱的函式,函式名是由關鍵字 operator 和其後要過載的運算子符號構成的。與其他函式一樣,過載運算子有乙個返回型別和乙個引數列表。如果我們定義的函式為類的成員函式 box operator const box 如果我們定義的函式為非成員函式,那麼我們需要為每次操作傳遞兩個...