1
static const Function* Get...();
为什么我不能从静态成员函数返回指向const的指针?或者我可以吗?如何从静态函数返回指向const的指针?
凡
typedef void Function(Object * object, HandlerAction action);
我只是不想让来电者改变函数指针他得到了。
static const Function* Get...();
为什么我不能从静态成员函数返回指向const的指针?或者我可以吗?如何从静态函数返回指向const的指针?
凡
typedef void Function(Object * object, HandlerAction action);
我只是不想让来电者改变函数指针他得到了。
你试图在你的代码中返回的是一个指向常量非成员函数的指针(但这不是一个有效的结构,只有成员函数可以是常量)。
你想要做的是一个常量指针返回的功能,这将是这样写的:
static Function * const Get...();
const
总是应用于类型与其立即离开;除非它是第一件事情(因为static
是无类型的,因此不能制作const
- 在这种情况下,它适用于它的直接右侧的类型,即Function
),所以函数类型本身,而不是指针。