4.1函式物件
4.1.1函式物件概念
過載函式呼叫操作符的類,其物件常稱為函式物件
函式物件使用過載的()時,行為類似函式呼叫,也叫仿函式
本質:函式物件(仿函式)是乙個類,不是函式
函式物件使用
特點:函式物件在使用時,可以像普通函式那樣呼叫,可以有引數,可以有返回值
函式物件超出普通函式概念,函式物件可以有自己的狀態
函式物件可以作為引數傳遞
**示例:
#include
#include
using
namespace std;
//函式物件(仿函式)
class
myadd};
//1.函式物件在使用時,可以像普通函式那樣呼叫,可以有引數,可以有返回值
void
test01()
//2.函式物件超出普通函式概念,函式物件可以有自己的狀態
class
myprint
void
operator()
(string test)
int count;
//內部自己狀態};
void
test02()
//3.函式物件可以作為引數傳遞
void
doprint
(myprint &mp, string test)
void
test03()
intmain()
STL 函式物件
一 函式物件 functor stl中提供了一元和二元函式的兩種functor,通過unary function和binary function提供了這兩種不同引數數量的functor的基本結構,在這兩個型別中,分別內嵌定義一元和二元函式操作在模版推演的時候需要用到的typedef.一元函式的定義為...
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 ...