六個算數運算子
plus
//加法
minus
//減法
negetive
//否定
multiplies
//乘法
divides
//除法
modules
//取模
**示例:
#include #include #include #include using namespace std;
int main()
;vectoriv(ia, ia + 5);
//120
cout << accumulate(iv.begin(), iv.end(), 1, multiplies()) << endl;
//15
cout << multiplies()(3, 5) << endl;
modulusmodulusobj;
cout << modulusobj(3, 5) << endl; // 3
system("pause");
return 0;
}
六個關係運算類仿函式
less
//小於
less_equal
//小於等於
greater
//大於
greater_equal
//大於等於
equal_to
//等於
not_equal
//不等於
**示例:
#include #include #include#include using namespace std;
template class display
};int main()
; vectoriv(ia, ia + 5);
sort(iv.begin(), iv.end(), greater());
for_each(iv.begin(), iv.end(), display());
system("pause");
return 0;
}
三個邏輯運算子
logic_and
//邏輯於
logic_and
//邏輯或
logic_not
//邏輯否
STL之仿函式
這裡介紹仿函式,謂詞,內建函式物件,介面卡的用法 仿函式 又稱函式物件,實際上是過載操作符 其中不定義構造和析構函式 只有乙個引數是一元仿函式,兩個就是二元 eg class func intmain 優點 函式物件超越了普通函式的概念,可以在內部儲存其狀態 比如呼叫次數 函式物件可以作為引數呼叫 ...
stl 仿函式 函式物件
定義 stl原始碼剖析 仿函式其實上就是乙個 行為類似函式 的物件。即主體是物件,只是使用起來像乙個函式。傳遞函式指標 templatebool compare to const t x,const t y templatevoid print compare t fun int main 傳遞的是...
STL 仿函式(函式物件)
定義 一種具有函式特徵的物件,呼叫者可以像函式一樣使用該物件,為了能夠 行為類似函式 該物件所在類必須自定義函式呼叫運算子operator 就可以在仿函式物件後面加上一對小括號,以此呼叫仿函式定義的operator 操作。class mul2 class mul3 intmain for each ...