C ++多继承访问修饰符

跨度
class A{...}
class B{...}
class C : public A, B {...}

A和B现在都公开继承了吗?还是我必须为每个类编写一个显式的访问修饰符?

迈克尔·肯泽尔

基类列表的语法基本上是([class.derived]§1中的完整语法规范):

[private|protected|public] [virtual] <base-class-name>, ...

因此,访问说明符是每个基本说明符的一部分

class C : public A, B {...}

在这里,只有A一个显式访问说明符public,另一个库B没有给出显式访问说明符,这意味着将使用默认值。由于B使用class-key 声明,因此class其默认的基本访问说明符将为private(请参见[class.access.base]§2)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

C++ 中的继承默认访问修饰符

C#中的访问修饰符

在C ++中访问类名的访问修饰符

c#访问修饰符部分,如c ++

与C ++相比Java中的访问修饰符

C#中的默认访问修饰符是什么?

C#中const字段的继承修饰符“ new”

是否有任何与访问修饰符等效的东西,该修饰符可以限制使用C#对一个线程的访问?

C#中的幂等修饰符

在C中使用修饰符static

计划中的“受私有保护”的C#访问修饰符是什么意思?

C#:使用getter / setter shortand时,可以混合使用函数访问修饰符吗?

访问级别修饰符与C#中的程序集负载

在C#中,指定方法的访问修饰符等效于get和set

为什么在C#中需要提及实现接口属性的访问修饰符?

进行单元测试时使用C#“内部”访问修饰符

System.Reflection.BindingFlags.Instance与C#访问修饰符的对应关系

在接口C#8中使用静态,内部和受保护的访问修饰符

将访问修饰符设置为 C++ #define CONSTANT_NAME constant_value

如何在C中为结构实现受保护的访问修饰符

C#中类和变量的默认访问修饰符?

在Visual C ++中,访问修饰符“受保护的私有”有什么作用?

访问修饰符是C#中“方法签名”的一部分吗?

在 C# 中限制表单类属性的访问修饰符

使用泛型和'new'修饰符隐藏父级成员时出现C#继承问题

尝试使用std :: functional和std :: bind在C ++中创建C#样式事件访问修饰符

继承中构造函数的默认访问修饰符

继承接口并设置访问修饰符

在C#中,公共,私有,受保护和没有访问修饰符之间有什么区别?