【发布时间】:2012-11-08 18:38:42
【问题描述】:
我有一个问题,我缩小到以下代码:
class A
{
};
class B : private A
{
};
void f(A*)
{
}
void f(void*)
{
}
int main()
{
B b;
f(&b);
}
gcc 4.7 出现以下错误:
error: ‘A’ is an inaccessible base of ‘B’
我知道 A 不可访问,但我希望编译器调用 f(void*)。这种行为是正常的还是我做错了什么?或者可能是编译器错误?
【问题讨论】:
标签: c++