可能是重复问题:
C++中的静态虚方法?
我们能在C++中拥有一个虚拟静态方法吗?我尝试编译以下代码:
#include <iostream>
using namespace std;
class A
{
public:
virtual static void f() {cout << "A's static method" << endl;}
};
class B :public A
{
public:
static void f() {cout << "B's static method" << endl;}
};
int main()
{
/* some code */
return 0;
}
但编译器报错:
member 'f' cannot be declared both virtual and static
所以我猜答案是否定的,但为什么呢?
谢谢, Ron