用到以下演算法:
templatetype accumulate(inputiterator first, inputiterator last, type val, binaryfunction binaryop);
#include #include //包含數值演算法標頭檔案
using namespace std;
//定義乙個普通函式
int mult(int x, int y) ;
int main() ;
const int n = sizeof(a) / sizeof(int);
cout << "the result by multipling all elements in a is "
<< accumulate(a, a + n, 1, mult)
<< endl;
return 0;
}
#include #include //包含數值演算法標頭檔案
using namespace std;
class multclass
};int main() ;
const int n = sizeof(a) / sizeof(int);
cout << "the result by multipling all elements in a is "
<< accumulate(a, a + n, 1, multclass()) //將類multclass傳遞給通用演算法
<< endl;
return 0;
}
用於關係運算、邏輯運算的函式物件(要求返回值為bool)
#include #include //包含數值演算法標頭檔案
#include //包含標準函式物件標頭檔案
using namespace std;
int main() ;
const int n = sizeof(a) / sizeof(int);
cout << "the result by multipling all elements in a is 「
<< accumulate(a, a + n, 1, multiplies())
<< endl; //將標準函式物件傳遞給通用演算法
STL 函式物件
一 函式物件 functor stl中提供了一元和二元函式的兩種functor,通過unary function和binary function提供了這兩種不同引數數量的functor的基本結構,在這兩個型別中,分別內嵌定義一元和二元函式操作在模版推演的時候需要用到的typedef.一元函式的定義為...
STL 函式物件
4.1函式物件 4.1.1函式物件概念 過載函式呼叫操作符的類,其物件常稱為函式物件 函式物件使用過載的 時,行為類似函式呼叫,也叫仿函式 本質 函式物件 仿函式 是乙個類,不是函式 函式物件使用 特點 函式物件在使用時,可以像普通函式那樣呼叫,可以有引數,可以有返回值 函式物件超出普通函式概念,函...
stl 仿函式 函式物件
定義 stl原始碼剖析 仿函式其實上就是乙個 行為類似函式 的物件。即主體是物件,只是使用起來像乙個函式。傳遞函式指標 templatebool compare to const t x,const t y templatevoid print compare t fun int main 傳遞的是...