【理解】重载函数调用(Funtion Call)运算符()
-
定义
Funtion Object是某种class的实例对象,称为函数对象。这类class对函数调用运算符(Funtion Call)做了重载操作。 -
用处
使Funtion Object可以被当作一般函数使用。 -
测试
1.代码
class LessThan {
public:
//自己定义的比较函数,也就是重载函数调用运算符
bool operator()( const string &s1, const string &s2 )
{ return s1.size() < s2.size(); }
};
int main()
{
vector<string> text;
//sort函数可以直接调用比较函数
sort( text.begin(), text.end(), LessThan() );
}
2.结果
实现了按字符串长度的从小到大排序。