สมมติว่าเราต้องการสร้างคลาส Triangle และคลาสลูก Isosceles Triangle มีฟังก์ชันพิมพ์ว่าเป็นสามเหลี่ยม Isosceles มีฟังก์ชันแสดงว่าเป็นสามเหลี่ยมหน้าจั่วและคำอธิบาย ต้องเรียกฟังก์ชันของคลาสพ่อผ่านออบเจกต์ Isosceles
หากสร้างออบเจกต์ trg เรียก trg.isosceles(), trg.description(), trg.triangle() ผลลัพธ์:
This is an isosceles triangle There are two sides are equal in an isosceles triangle This is a triangle
ขั้นตอนการแก้ปัญหา
- สร้างคลาส Triangle มีเมธอด triangle() public/protected
- สร้างคลาส Isosceles สืบทอด public มี isosceles() และ description()
ตัวอย่างโค้ด
#include <iostream> using namespace std; class Triangle{ public: void triangle(){ cout<<"This is a triangle" << endl; } }; class Isosceles : public Triangle{ public: void isosceles(){ cout<<"This is an isosceles triangle" << endl; } void description(){ cout<<"There are two sides are equal in an isosceles triangle" << endl; } }; int main(){ Isosceles trg; trg.isosceles(); trg.description(); trg.triangle(); }
อินพุต
Isosceles trg; trg.isosceles(); trg.description(); trg.triangle();
เอาต์พุต
This is an isosceles triangle There are two sides are equal in an isosceles triangle This is a triangle