Heim >Backend-Entwicklung >C++ >Wie kann ich eine übergeordnete Klassenfunktion aus einer abgeleiteten Klasse in C aufrufen?

Wie kann ich eine übergeordnete Klassenfunktion aus einer abgeleiteten Klasse in C aufrufen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-19 07:58:33278Durchsuche

How Can I Call a Parent Class Function from a Derived Class in C  ?

Aufrufen der übergeordneten Funktion aus einer abgeleiteten Klassenfunktion in C

Bei der objektorientierten Programmierung erbt eine abgeleitete Klasse die Attribute und Methoden von seine übergeordnete Klasse. Bei der Ausführung innerhalb der abgeleiteten Klasse kann es Situationen geben, in denen Sie die Funktion der übergeordneten Klasse aufrufen müssen. Die Implementierung dieser Funktion in C erfordert Kenntnisse der Vererbung und Methodenauflösung.

Aufrufen der übergeordneten Funktion ohne Überschreiben

Wenn die abgeleitete Klasse keine Methode mit derselben definiert Signatur als übergeordnete Klasse verwenden, können Sie die Methode der übergeordneten Klasse direkt über ihren Namen aufrufen. Die Syntax hierfür lautet:

<parent_class_name>::<method_name>(<arguments>);

Beispielsweise können Sie im bereitgestellten Szenario mit den Klassen über- und untergeordnete Klassen über die Druckfunktion der untergeordneten Klasse auf die Druckfunktion der übergeordneten Klasse zugreifen, indem Sie Folgendes verwenden:

class child : public parent {
public:
    void print() {
        parent::print(); // Calls the parent's print function
    }
};

Aufrufen der übergeordneten Funktion beim Überschreiben

Wenn die abgeleitete Klasse über eine eigene Implementierung der Methode verfügt, können Sie kann weiterhin die Methode des Elternteils aufrufen. In diesem Fall müssen Sie jedoch den Bereichsauflösungsoperator verwenden, der durch zwei Doppelpunkte (::) gekennzeichnet ist. Die Syntax hierfür lautet:

<parent_class_name>::<method_name>(<arguments>);

Angenommen, die untergeordnete Klasse verfügt über das gleiche Beispiel wie zuvor und verfügt über eine eigene Druckfunktion. Um die Druckfunktion der übergeordneten Klasse aufzurufen, würden Sie Folgendes verwenden:

class child : public parent {
public:
    void print() {
        // Call the parent's print function
        parent::print();

        // Call the derived class's print function
        // Implement your own functionality here
    }
};

Durch die Verwendung dieser Technik können Sie die Funktionalität sowohl der übergeordneten als auch der abgeleiteten Klassen nutzen und so Flexibilität und Wartbarkeit des Codes in Ihren C-Anwendungen gewährleisten.

Das obige ist der detaillierte Inhalt vonWie kann ich eine übergeordnete Klassenfunktion aus einer abgeleiteten Klasse in C aufrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn