如何引用类成员函数 [用引用方式] 请教大家
先贴代码再说
#include <iostream>
using namespace std;
class Test1
{
public:
void print()
{
cout < < "Member function reference success " < <endl;
}
};
void print()
{
cout < < "Common function reference success " < <endl;
return;
}
int main()
{
typedef void(&RPF)();
RPF rpf = print; //reference common function
rpf();
//TODO:How to refer member function!!
return 0;
}
现在想请教大的问题是:如何引用类的成员函数,不用指针,用引用方式
[解决办法]
可以用成员指针
但好象没成员引用这个东西吧
[解决办法]
针对非静态成员函数,好像只有指针类型吧?
[解决办法]
成员函数引用类型好像没法调用啊。
比如对于成员函数指针mpf,可以这样调用:
(p-> *mpf)();
或
(o.*mpf)();
那“成员引用”怎么调?把星号去掉?去掉就成了“成员访问操作符”了。
[解决办法]
楼主,你恐怕还没搞清楚:成员函数指针不是指针。普通函数可以有函数引用类型,成员函数则没有。