c++类可以重载()【即小括号符】,来实现仿函数,或者叫函数对象。那么这个类可以行使函数的功能,用以优雅的实现一些功能。 基本使用方式 classFuncClass{public:voidoperator()(conststring&str)const{std::cout<<str<<std::endl;}};intmain(){FuncClass myFuncClass;myFuncClass("hello world");} 与普通函数相比...
bool operator() (const string& str) const { return str.length() < length; } private: const int length; }; count_if(myVector.begin(), myVector.end(), ShorterThan(length)); //直接调用即可 这里需要注意的是,不要纠结于语法问题:ShorterThan(length)似乎并没有调用operator()函数?其实它调用了...