در C++، امکان ارث بردن صفات و متدها از یک کلاس به کلاس دیگر وجود دارد. ما "مفهوم وراثت" را به دو دسته گروه بندی می کنیم:
- کلاس مشتق شده (فرزند) - کلاسی که از کلاس دیگری ارث می برد
- کلاس پایه (والد) - کلاسی که از آن به ارث رسیده است
برای ارث بردن از یک کلاس، از نماد :
استفاده کنید.
در مثال زیر، کلاس Car
(child) ویژگی ها و روش ها را از کلاس Vehicle
به ارث می برد.
(والد):
مثال
// Base class
class Vehicle {
public:
string brand = "Ford";
void honk() {
cout << "Tuut, tuut! n" ;
}
};
// Derived
class
class Car: public Vehicle {
public:
string model = "Mustang";
};
int main() {
Car myCar;
myCar.honk();
cout << myCar.brand + " " + myCar.model;
return 0;
}
چرا و چه زمانی از "ارث" استفاده کنیم؟
- برای قابلیت استفاده مجدد کد مفید است: هنگامی که یک کلاس جدید ایجاد می کنید، از ویژگی ها و روش های یک کلاس موجود استفاده مجدد کنید.