第一关这不是一个关于如何指向常数方法的问题。我想知道如何使我的方法指针保持不变。
鉴于:
struct foo {
void func1();
void func2();
};
我可以用void (foo::*bar)() = &foo::func1
构造一个方法指针,但我以后可以做bar = &foo.func2
,我想阻止它。
我可以很容易地用const auto bar = &foo::func1
这样做,但我不知道怎么做这个前c++11。
您所要做的就是在const
之后添加*
关键字,如下所示:
void(foo::*const _pointer)() = &foo::func1;