c++ - 为什么 GCC 允许从私有(private)嵌套类继承?

标签 c++ gcc g++ nested-class private-members

考虑以下代码:

class A {
  class B {};
};

template <typename C>
class D : A::B {};

void f() {
  D<int> d;
}

D<int>继承自 A::B这是一个私有(private)嵌套类。我原以为这是一个错误,但 GCC 接受了这个代码。是 GCC 中的错误还是我遗漏了什么?

最佳答案

我找到了答案。因为它可能对其他人有用,所以我将其发布在这里 - 这是 GCC 错误 47346 .

关于c++ - 为什么 GCC 允许从私有(private)嵌套类继承?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13830112/

相关文章:

c++ - Gcc 扩展或宏,用于在编译时检查某些基本类型所使用的位

c++ - C++ 构造函数的异常说明符

C++ 为成员容器中的项调用for_each中的成员函数

c++ - 无法将参数 1 从 Person 转换为 Person *[]

c++ - 有没有一种好方法,可以用 C++ 生成代码以通过网络发送函数参数?

C++11 - 无法使用 constexpr 函数定义 constexpr 文字?

c++ - 禁用特定进程的注册表访问 (WinAPI)

c++ - 抑制 Qt header 的 GCC 警告

c++ - types.h 中的内容——编译器在哪里定义了 int、signed int 等的宽度?

c++ - 从 unique_ptr 创建 shared_ptr