【发布时间】:2011-03-03 07:02:12
【问题描述】:
你能解释一下为什么不允许这样做吗?
#include <stdio.h>
class B {
private:
int a;
public:
int a;
};
int main() {
return 0;
}
这是?
#include <stdio.h>
class A {
public:
int a;
};
class B : public A{
private:
int a;
};
int main() {
return 0;
}
在这两种情况下,class B 中都有一个名为 a 的公共变量和一个私有变量。
已编辑!
【问题讨论】:
-
@Neil:你的意思是第二个声明了 A 类?
-
@Alan 是的 - 我对这个问题感到非常困惑,我有点困惑:-)
-
为什么会有反对票?这是一个合理的问题,我记得在学习 C++ 课程时也想知道同样的事情......
-
这似乎更像是一个问题而不是一个疑问。你对 C++ 的继承缺乏信心吗?
-
@incrediman 在 OP 编辑之前,对这个问题投了反对票,完全改变了它的意义。
标签: c++ class inheritance redeclaration