Kann Eine Rein Virtuelle Funktion Einen Körper Haben?

Ja, eine rein virtuelle Funktion kann einen Körper haben. Alle rein virtuellen Mittel sind, dass Sie die Funktion nicht mit einem Objekt aufrufen können, das die rein virtuelle Funktion deklariert oder geerbt hat. Aus diesem Grund können Sie keine Klassenobjekte mit rein virtuellen Funktionen erstellen.

Was ist also der Unterschied zwischen einer virtuellen Funktion und einer rein virtuellen Funktion?

Das Wichtigste an '' und '' ist, dass '' seine Definitionsbasisklasse hat und auch die erbenden abgeleiteten Klassen sie neu definieren. Die hat keine Definitionsbasisklasse, und alle erbenden abgeleiteten Klassen müssen sie neu definieren.

Wie erstellt man außerdem eine rein virtuelle Funktion? Wir können keine Objekte abstrakter Klassen. Ein (oder abstraktes ) in C++ ist ein, für das wir keine Implementierung haben, sondern nur. A ist durch die Zuweisung von 0 in . Siehe das folgende Beispiel.

Die Leute fragen auch, kann eine rein virtuelle Funktion Parameter haben?

1 Antwort. ja, ein PVF. void playCard(Spieler gegnerischerSpieler) = 0; here = 0 (wird nicht zugewiesen), Wir informieren den Compiler einfach darüber, dass er keinen Körper hat (wo er deklariert ist, in dieser Klasse), aber er .

Was ist der Sinn von virtuellen Funktionen?

Stellen Sie sicher, dass für ein Objekt die richtige aufgerufen wird, unabhängig von der Art der Referenz (oder des Zeigers), die für den Aufruf verwendet wird. werden mit einem Schlüsselwort in der Basisklasse deklariert. Die Anrufauflösung erfolgt zur Laufzeit.