什么是调用操作符和函数对象呢?就是调用操作符看起来像是调用函数,如下设计的一个类,是用来求一个整数的绝对值的,如下类
struct absInt { int operator()(int a) { return (a < 0)? -a: a; } };如下调用
int nVal = -1234; absInt abs; int nPosVal = abs.operator()(nVal); int nabsVal = abs(nVal);这里使用的是abs(nval),看起来是不是函数的调用,而且还有形参呢,这里使用了重载操作符(),这里只有一个形参,所以默认使用abs()就是调用操作符函数(),而形参就是nVal,所以就看起来像函数调用。
待续。。。。。。
原文:http://blog.csdn.net/comwise/article/details/19937727