您的位置:首页 > 编程语言 > C语言/C++

C++里,我们通过在一个类中重载括号运算符的方法使用仿函数

2017-02-10 09:55 507 查看
在C++里,我们通过在一个类中重载括号运算符的方法使用一个函数对象而不是一个普通函数。

#include <iostream>

class compare_class

{

public:

 bool operator()(int A, int B)const

 {

  std::cout<<"if "<< A<<"<"<<B << std::endl;

  return A < B;

 }

};

// Declaration of C++ sorting function.

//template<class ComparisonFunctor>

//void sort_ints(int* begin_items, int num_items, ComparisonFunctor c);

int main()

{

 int items[]={4, 3, 1, 2};

 compare_class functor;

 //sort_ints(items, sizeof(items)/sizeof(items[0]), functor);

 for (int i=0;i<3;i++)

 {

  std::cout<< functor(items[i],items[i+1]) << std::endl;

 }

 return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐