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; }
时间: 2024-10-12 12:41:59