C++类继承(几乎)是否应该公开?

bod*_*ydo -2 c++

我是否应该public在继承类时始终添加关键字?在执行此代码时:

class Derived : public Base {

}
Run Code Online (Sandbox Code Playgroud)

我认为99%的情况下这是正确的做法.对?

Tas*_*Tas 7

这取决于您要寻找的型号.

来自Scott Myers - Effective C++ Third Edition(推荐阅读,顺便说一句):

public继承意味着"是-a".如果您编写该类D("Derived")公开继承自class B("Base"),那么您告诉C++编译器(以及您的代码的人类读者)每个类型D的对象也是类型的对象B,但反之亦然

private 继承意味着"以实现方式"