c++ - 私有(private)继承和组合,哪个最好,为什么?

标签 c++ oop

<分区>

假设我有一个类 engin 并且我从 engin 类继承了一个类 car

class engin
{
    public:
        engin(int nobofcylinders);
        void start();
};
class car:private engin
{
    public:
        car():e(8){}
        void start()
        {
            e.start();
        }
    private:
        engin e;
};

现在同样可以通过组合来完成,问题是哪种方法最好并且主要用于编程,为什么??????

最佳答案

首选组合有两个主要原因:

  • 组成的事物可以有名字
  • 你可以组合多个相同类型的东西

关于c++ - 私有(private)继承和组合,哪个最好,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2126633/

相关文章:

c++ - 将函数转换为成员函数?

c++ - C++为类方法实现超时功能模板

c++ - 使用 C++ 操作符重载 : class with pointer datat members

c++ - 使用 getenv() 读取环境变量返回 NULL C++

c++ - 如何通过 int-descriptor 找出文件名? (或 "can I..?")

c++ - SFML loadFromFile undefined reference (测试有效,但添加图像时崩溃)

oop - 使用反射是否被认为是不面向对象的?

c++ - OOP——让部分了解它们的整体

c++ - 使用另一个类对象的 std::vector 类

c++ - 这是否被视为复制构造函数?