我的类有一组具有完全相同签名的成员函数。
我需要显式声明这些成员方法的命名类型,以便定义可以使用这些方法之一进行赋值的变量/参数。
像这样:
class Point_t {
private:
int X;
int Y;
public:
int getX();
int getY();
};
// This is only to define a variable, not a type name
int (Point_t::*var_name)() = &Point_t::getX;
但它只是定义一个变量,而不是声明类型名称。
此外,这是C风格的,我认为它在我的C++代码中非常难看。
有现代 C++ 风格吗?
我希望它看起来像:
using method_type = Point_t::*;
谢谢!