在重构一段代码的过程中,我遇到了以下几行:
class Bar
{
protected:
int (Bar::* fooFunction)(float); //this line
}
我之前从未见过这种语法。这个语法是什么?为什么在C ++中使用它?
答案 0 :(得分:2)
这是一个成员函数指针。
具体来说,它是指向Bar
对象的成员函数的指针,该对象采用float
参数并返回int
。
在此处阅读更多内容:http://en.cppreference.com/w/cpp/language/pointer#Pointers_to_member_functions
答案 1 :(得分:0)
这是什么语法
它声明了一个指向成员函数的指针。
为什么在C ++中使用它?
它用于指向非静态成员函数。