在 C++ 中,仿函数是一种可以像函数一样调用的对象。
通过实现 operator()
,你可以创建一个类或结构体,然后像函数一样使用它,这就是仿函数的概念。
当我们谈到仿函数时,通常是指定义了函数调用运算符 operator()
的类或结构体。
以下是两个简单的 C++ 仿函数示例,一个用于比较整数大小,另一个用于字符串长度比较:
比较整数大小的仿函数:
#include <iostream> class CompareIntegers { public: bool operator()(int a, int b) const { return a < b; } }; int main() { CompareIntegers compare; // 使用仿函数进行比较 if (compare(3, 5)) { std::cout << "3 is less than 5" << std::endl; } else { std::cout << "3 is not less than 5" << std::endl; } return 0; }