முக்கிய உள்ளடக்கத்திற்குச் செல்லவும்
தொகுதி 6 · பாடம் 1 இன் 2பாடத்திட்டத்தில் 13/18~12 min
தொகுதி பாடங்கள் (1/2)

C++ இல் பரம்பரை

பரம்பரை என்பது பொருள் சார்ந்த நிரலாக்கத்தின் (OOP) முக்கிய தூண்களில் ஒன்றாகும். இது ஒரு புதிய வகுப்பை (பெறப்பட்ட அல்லது குழந்தை வகுப்பு என அழைக்கப்படுகிறது) ஏற்கனவே உள்ள வகுப்பிலிருந்து (அடிப்படை அல்லது பெற்றோர் வகுப்பு என அழைக்கப்படும்) உறுப்பினர்களை (பண்புகள் மற்றும் முறைகள்) பெற அனுமதிக்கிறது, குறியீடு மறுபயன்பாட்டை ஊக்குவிக்கிறது.

அடிப்படை தொடரியல்

C++ இல், பெறப்பட்ட வகுப்பின் பெயருக்குப் பிறகு : ஆபரேட்டரைப் பயன்படுத்தி, அணுகல் விவரக்குறிப்பு (பொதுவாக public) மற்றும் அடிப்படை வகுப்புப் பெயரைப் பயன்படுத்தி பரம்பரை குறிப்பிடப்படுகிறது.

C++
class Shape {
public:
    void setColor(std::string c) {
        color = c;
    }
protected:
    std::string color; // Accessible by derived classes
};

// Rectangle inherits publicly from Shape
class Rectangle : public Shape {
public:
    double getArea() {
        return width * height;
    }
private:
    double width {0.0};
    double height {0.0};
};

அணுகல் விவரக்குறிப்பு: protected

public மற்றும் private உடன், பரம்பரையானது protected விவரக்குறிப்பை அறிமுகப்படுத்துகிறது:

  • private அடிப்படை வகுப்பின் உறுப்பினர்கள் இல்லை பெறப்பட்ட வகுப்பிலிருந்து நேரடியாக அணுக முடியாது.
  • protected அடிப்படை வகுப்பின் உறுப்பினர்கள் வெளியில் இருந்து அணுக முடியாது, ஆனால் பெறப்பட்ட வகுப்புகளுக்குள் நேரடியாக அணுகலாம்.

அடிப்படை வகுப்பு துவக்கம்

கன்ஸ்ட்ரக்டர்கள் தானாக மரபுரிமை பெறுவதில்லை. பெறப்பட்ட வகுப்பை உடனடிப்படுத்தும்போது, ​​அடிப்படை வகுப்பு கட்டமைப்பாளர் முதலில் அழைக்கப்படுகிறது. அடிப்படை வகுப்பிற்கு வாதங்கள் தேவைப்பட்டால், பெறப்பட்ட கன்ஸ்ட்ரக்டரின் உறுப்பினர் துவக்கி பட்டியலில் வெளிப்படையாக அதை செயல்படுத்த வேண்டும்.

C++
class Parent {
public:
    Parent(int x) {
        std::cout << "Parent: " << x << std::endl;
    }
};

class Child : public Parent {
public:
    // Explicit call to Parent constructor
    Child(int x, int y) : Parent(x) {
        std::cout << "Child: " << y << std::endl;
    }
};

நீங்களே முயற்சி செய்து பாருங்கள்

உடற்பயிற்சி#cpp.m6.l1.e1
முயற்சிகள்: 0ஏற்றுகிறது…

விலங்கு வகுப்பிலிருந்து பொதுவில் மரபுரிமை பெறும் நாய் வகுப்பை உருவாக்கவும். நாய் வகுப்பில் std ::cout ஐப் பயன்படுத்தி 'விளையாடுதல்' என்பதை அச்சிடும் பொது நாடகம்() முறை இருக்க வேண்டும்.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

அடிப்படை வகுப்பை நீட்டிக்க `:` தொடரியல் மற்றும் `பொது விலங்கு` ஐப் பயன்படுத்தவும், பின்னர் `play()` முறையை எழுதவும்.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்

உடற்பயிற்சி#cpp.m6.l1.e2
முயற்சிகள்: 0ஏற்றுகிறது…

வாகனத்திலிருந்து பெறுவதன் மூலம் கார் வகுப்பை முடிக்கவும். கார்க்கான கன்ஸ்ட்ரக்டரை எழுதவும், அது std::string b ஐ ஏற்றுக்கொண்டு, உறுப்பினர் துவக்கி பட்டியல் வழியாக வாகனக் கட்டமைப்பாளருக்கு அனுப்புகிறது.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

`கார்` கன்ஸ்ட்ரக்டரில், பிராண்டின் துவக்கத்தை அடிப்படை வகுப்பிற்கு வழங்க, அளவுரு அடைப்புக்குறிகளுக்குப் பிறகு உடனடியாக `: Vehicle(b)` என்ற தொடரியல் பயன்படுத்தவும்.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்