谁能解决这个问题?我似乎无法在任何地方找到解决方案,但我认为没有合理的理由为什么下面的行(显示编译错误的注释)应该是一个问题.
注意:此问题是C++基类如何在运行时确定方法是否已被覆盖的衍生物?
class MyClass
{
typedef void (MyClass::*MethodPtr)();
virtual void Method()
{
MethodPtr a = &MyClass::Method; // legal
MethodPtr b = &Method; // error C2276: ‘&’ : illegal operation on bound member function expression
if (a == b) // this method has not been overridden?
throw “Not overridden”;
}
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3189 次 |
| 最近记录: |