Zuhause Persönliche Finanzen Wie Polymorphismus in C ++ - Dummies

Wie Polymorphismus in C ++ - Dummies

Video: Zeiger - (dynamische) Datenstrukturen 3 ● Gehe auf SIMPLECLUB.DE/GO & werde #EinserSchüler 2025

Video: Zeiger - (dynamische) Datenstrukturen 3 ● Gehe auf SIMPLECLUB.DE/GO & werde #EinserSchüler 2025
Anonim

C ++ als Straddler unterstützt sowohl frühe als auch späte Bindung. Jede gegebene Programmiersprache kann entweder frühe oder späte Bindung basierend auf den Launen ihrer Entwickler unterstützen. Ältere Sprachen wie C neigen dazu, die frühe Bindung alleine zu unterstützen. Neue Sprachen wie Java und C # unterstützen nur die späte Bindung.

Sie werden überrascht sein, dass der Standard für C ++ eine frühe Bindung ist. Die Ausgabe des Programms OverloadOverride lautet wie folgt:

Wir sind in Student:: calcTuition Wir sind in Student:: calcTuition Drücken Sie die Eingabetaste, um fortzufahren …

Der Grund ist einfach, wenn auch etwas veraltet. Erstens muss C ++ in der Standardeinstellung so sehr wie C agieren, um die Aufwärtskompatibilität mit dem Vorgänger beizubehalten. Zweitens fügt der Polymorphismus jedem Funktionsaufruf sowohl hinsichtlich der Datenspeicherung als auch des Codes, der zum Ausführen des Anrufs erforderlich ist, einen geringen Overhead hinzu.

Die C ++ - Gründer hatten Bedenken, dass zusätzlicher Overhead als Grund dafür verwendet werden würde, C ++ nicht als Systemsprache der Wahl zu übernehmen, so dass sie die Vorabbindung effizienter gestalten konnten.

Um eine Memberfunktion polymorph zu machen, muss der Programmierer die Funktion mit dem C ++ - Schlüsselwort virtual, kennzeichnen, wie in der folgenden Modifikation der Deklaration in der OverloadOveride < Programm: Klasse Student {public: virtuelles void calcTuition () {cout << "wir sind in Student:: calcTuition" << endl;}};

Das Schlüsselwort

virtual , das C ++ mitteilt, dass calcTuition () eine polymorphe Elementfunktion ist. Das heißt, wenn Sie calcTuition () virtual deklarieren, bedeutet das, dass Aufrufe an ihn spät gebunden werden, wenn Zweifel bezüglich des Laufzeittyps des Objekts bestehen, mit dem calcTuition () aufgerufen wird.

Wenn Sie das Programm

OverloadOveride mit calcTuition () virtual deklariert ausführen, wird die folgende Ausgabe erzeugt: Wir sind in Student:: calcTuition Wir sind in GraduateStudent:: calcTuition Press Geben Sie hier ein, um fortzufahren …

Wenn Sie mit dem Debugger vertraut sind, der mit Ihrer C ++ - Umgebung geliefert wird, sollten Sie dieses Beispiel in nur einem Schritt ausführen. Es ist so cool, das Programm als Einzelschritt in Student zu sehen:: calcTuition () das erste Mal, dass fn () aufgerufen wird, aber in GraduateStudent:: calcTuition () im zweiten Aufruf. Polymorphismus kann man nicht wirklich schätzen, bevor man es versucht hat.

Sie müssen die Funktion nur in der Basisklasse virtuell deklarieren. Die "Virtualness" wird automatisch in die Unterklasse übernommen. Manchmal jedoch folgen Programmierer dem Codierungsstandard, die Funktion virtuell überall (virtuell) zu deklarieren.

Wie Polymorphismus in C ++ - Dummies

Die Wahl des Herausgebers

Web Marketing: Warum Suchmaschinen existieren - Dummies

Web Marketing: Warum Suchmaschinen existieren - Dummies

Wenn Sie verstehen, warum Suchmaschinen existieren, können sie für Sie in Ihrem Web-Marketing-Geschäft arbeiten. Also, hier ist eine kurze Lektion, warum Suchmaschinen existieren und wie Sie sie nutzen können, um Geld zu verdienen. Suchmaschinen liefern Relevanz. Relevanz bedeutet, dass Besucher auf Suchergebnisse klicken und zufrieden sind mit ...

Was sind Tür- und Informationsseiten? - dummies

Was sind Tür- und Informationsseiten? - dummies

Eine Doorway-Seite wird nur als Zugang von einer Suchmaschine zu Ihrer Website erstellt. Doorway-Seiten werden manchmal als Gateway-Seiten und Geisterseiten bezeichnet. Die Idee besteht darin, hoch optimierte Seiten zu erstellen, die von Suchmaschinen aufgenommen und indiziert werden und die mit etwas Glück gut ranken und somit den Traffic auf eine ...

Was ist eine Weiterleitung bei der Suchmaschinenoptimierung? - Dummies

Was ist eine Weiterleitung bei der Suchmaschinenoptimierung? - Dummies

Eine Weiterleitung ist das automatische Laden einer Seite ohne Benutzereingriff. Sie klicken auf einen Link, um eine Webseite in Ihren Browser zu laden, und innerhalb von Sekunden verschwindet die geladene Seite, und eine neue wird angezeigt. Designer erstellen häufig Seiten für Suchmaschinen - optimierte, schlüsselwortreiche Seiten -, die Besucher auf die ...

Die Wahl des Herausgebers

Behandeln Probleme mit dem Kundenservice über Social Media - Dummies

Behandeln Probleme mit dem Kundenservice über Social Media - Dummies

, Wenn Kunden wissen, dass sie direkt mit ein Geschäft in den sozialen Medien, können sie aus einer beliebigen Anzahl von Gründen mit ihnen in Verbindung treten. Aber sobald sie merken, dass ein Problem mit dem Kundenservice oder einer Produktfrage über einen einzigen Tweet oder Beitrag angesprochen werden kann, ist es wahrscheinlicher, dass sie mit dem Unternehmen Geschäfte machen.

Acht Möglichkeiten, Social Media Feedback zu erhalten - Dummies

Acht Möglichkeiten, Social Media Feedback zu erhalten - Dummies

Die heutige Technologie verändert die Art und Weise, wie wir Geschäfte machen blitzschnell. Auch der Social-Media-Handel bewegt sich blitzschnell, aber durch die Beobachtung von Erwähnungen und Fragen an die Community können Sie einen Eindruck davon bekommen, wie Ihr Markt über bevorstehende Veränderungen denkt. Auch andere Posts können Ihnen helfen, kritisches Feedback aus der Öffentlichkeit zusammenzustellen ...

Manage Social Media Commerce mit HootSuite - dummies

Manage Social Media Commerce mit HootSuite - dummies

HootSuite ist ein Social Media Management System zur Umsetzung von Outreach und Überwachung in sozialen Netzwerken über ein einziges webbasiertes Dashboard. Für Unternehmen wird HootSuite am häufigsten von Social-Media-Teams mit mehreren Agenten verwendet, aber auch viele Einzelanwender mögen es. Wenn Sie auf der Suche nach einer robusten Plattform sind, die alles an einem Ort hält, ...

Die Wahl des Herausgebers

Die 5 Kornsterne der Mittelmeer - Dummies

Die 5 Kornsterne der Mittelmeer - Dummies

Die Mittelmeerdiät ist in der Praxis des Habens begründet ein Vollkorn zu jeder Mahlzeit. Und nein, das bedeutet nicht, eine ganze Platte Vollkornspaghetti mit Fleischsauce zum Abendessen zu essen. Stattdessen machen die Menschen im Mittelmeerraum ihr Getreide zur Beilage oder schaffen durch die Zugabe von magerem Eiweiß mehr Gleichgewicht ...

Strebe nach Gesundheit mit 7 bis 10 Portionen Obst und Gemüse - Schnuller

Strebe nach Gesundheit mit 7 bis 10 Portionen Obst und Gemüse - Schnuller

Der Verzehr von sieben bis zehn Portionen Obst und Gemüse pro Tag, wie sie für die mediterrane Ernährung empfohlen werden, mag sehr viel erscheinen, aber es muss keine so große Herausforderung sein. Wenn Sie nicht die Früchte und das Gemüse lieben, die spezifisch mit der Mittelmeerdiät verbunden sind, ist das okay! Essen Sie jede Art von Obst oder Gemüse, die Sie ...

Die gesundheitlichen Vorteile von mediterranen Kräutern und Gewürzen - Dummies

Die gesundheitlichen Vorteile von mediterranen Kräutern und Gewürzen - Dummies

Sie haben vielleicht gedacht, dass der Oregano und Basilikum in Ihrer Spaghetti-Sauce lieferte nur einen deutlichen italienischen oder mediterranen Geschmack, aber diese kleinen Kräuter sind Pflanzen, was bedeutet, dass sie alle Arten von gesundheitlichen Vorteilen haben, die einen großen Einfluss auf Ihre allgemeine Gesundheit haben können. Einfache Gewürze wie Ingwer und Oregano enthalten Phytochemikalien, ...