【发布时间】:2020-01-01 20:06:39
【问题描述】:
当我像这样使用using时,为什么构造函数是公开继承的?
class Base {
int x;
public:
Base(int x);
};
class Derived : public Base {
using Base::Base;
};
我现在可以做:
Derived d (2);
我认为using 声明具有它们所在位置的可见性。在这里,它应该是私有的。
来自C++ 编程语言:
一个名字带入派生 using-declaration 的类作用域的访问权限由 using-declaration 的位置决定;
【问题讨论】:
标签: c++ class inheritance constructor using-declaration