当前位置:首页 > 码农资料 > 正文内容

继承与组合的区别

CCSSRW15小时前码农资料9

继承(Inheritance)

继承是面向对象编程中的一种机制,允许一个类从另一个类继承属性和方法。下面是一个简单的例子:

#include <iostream>
using namespace std;
// 基类
class Animal {
public:
    void eat()
    {
        cout << "Eating..." << endl;
    }
};

// 派生类
class    Dog : public Animal {
public:
    void bark() {
        cout << "Barking..." << endl;
    }
};

int main() {
    Dog myDog;    myDog.eat();  // 从基类继承的方法
    myDog.bark(); // 派生类自己的方法
    return 0;
}

在这个例子中,Dog 类继承了 Animal 类,因此 Dog 类的对象可以调用 Animal 类的方法 eat

组合(Composition)

组合是将一个类的对象作为另一个类的成员变量来使用。下面是一个简单的例子:

#include <iostream>
using namespace std;
class Engine {
public:
void start() {
cout << "Engine started." << endl;
}
};
class Car {
private:
Engine engine; // 组合
public:
void start() {
engine.start();
cout << "Car started." << endl;
}
};
int main() {
Car myCar;
myCar.start();
return 0;
}


在这个例子中,Car 类包含了一个 Engine 对象作为其成员变量。这种关系称为组合。Car 类通过调用 Engine 对象的方法来完成某些操作。

希望这些例子能帮助你更好地理解 C++ 中的继承和组合。


扫描二维码推送至手机访问

本文链接:http://xinrui.ren/post/182.html

返回列表

上一篇:SQLite通过触发器判断并返回异常

没有最新的文章了...