C/C++:C++伪函数


C++伪函数:

所谓的伪函数。就是说它不是一个真正的函数,而是一个类或者说是一个结构体。


<span style="font-size:18px;">




#include <iostream>

void say_hello(){
    std::cout << "hello world !" << std::endl;
}

class Hello{

public:

    void operator () (){
         std::cout << "hello cpp !" << std::endl;
    }//重载运算符();

};

int main()
{
    say_hello();
    Hello p;
    p();

    return 0;
}
</span>


像代码中的say_hello()调用就是我们寻经常使用的函数调用。而我们用Hello定义的p。

然后p(),也就是我们所说的伪函数。而伪函数到底有什么优点或者说是优点呢?

它长处就在于,它能够传递。像用Hello来定义一样,它就想一个变量一样。方便。

并且还能被其它的类和成员所调用。我们寻常写的普通函数,则仅仅能依靠全局变量了。







posted @ 2017-04-21 17:51  yangykaifa  阅读(1654)  评论(0编辑  收藏  举报