C++函数指针:
我先来写一个类object,规定函数指针指向的必须是object的成员,或其子类的成员。
<span style="font-size:18px;">
class object{
public:
void (object::*p)();
};
</span>
好,然后我们再来写一个类hello继承于类object。写一个构造方法,用函数指针来指向输出object类型的。
<span style="font-size:18px;">
#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;
}</span>