首页 > 代码库 > C/C++:C++函数指针

C/C++:C++函数指针


C++函数指针:

我先来写一个类object,规定函数指针指向的必须是object的成员,或其子类的成员。




class object{
    
public:
    
    void (object::*p)();
};


好,然后我们再来写一个类hello继承于类object。写一个构造方法,用函数指针来指向输出object类型的。




#include <iostream>

class object{

public:

    void (object::*p)();
};

class hello:public object{

public:

    hello(){
        p = (void(object::*)())(&hello::say_hello);
        //强制转换为object的类型。
        (this->*p)();//指向p的位置,切调用它。
    }

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

int main()
{
    hello *p = new hello();
    delete p;
    return 0;
}









C/C++:C++函数指针