【发布时间】:2015-05-28 21:52:41
【问题描述】:
class Class1 {
Class1() { Class2::counter++;}
}
class Class2: public Class1 {
public:
static int counter;
}
以上是我正在尝试做的一个例子。我试图在超类中使用子类的静态变量,但这给了我一个编译器错误,因为首先初始化 Class1 并且当编译器到达 Class2::counter++;它尚未初始化 Class2,因此我收到“Class2 尚未声明”错误。我怎样才能解决这个问题?我需要完全改变我的逻辑吗?
【问题讨论】:
标签: c++ variables static subclass