Wie implementiere ich diesen Zeiger in C ++?



Dies ist ein Zeiger, der auf die Aufruferobjekte zeigt. In diesem Beitrag werden wir uns eingehender mit dem Konzept dieses Zeigers in C ++ befassen.

Während der Programmierung stoßen Sie möglicherweise auf das Schlüsselwort 'this'. 'Dies' ist ein Zeiger, der auf die Aufruferobjekte zeigt. In diesem Beitrag werden wir uns eingehender mit dem Konzept befassen Zeiger in C ++

Die folgenden Hinweise werden in diesem Artikel behandelt:





hat ein vs ist ein Java

Beginnen wir mit diesem Artikel über diesen Zeiger in C ++

Dieser Zeiger in C ++

Zeiger auf Objekte

Menschen neigen dazu, sich von Zeigern fernzuhalten, da ihre Arbeit wenig verwirrend klingt. In diesem Beitrag werden wir das Konzept des Zeigers auf einfachste Weise verstehen. Zeiger werden verwendet, um die Adresse einer bestimmten Variablen zu speichern. Sie werden verwendet, um auf die Variable zu verweisen, deren Adresse sie speichert. Ein wichtiger Punkt hierbei ist, dass ein Zeiger nur die Adresse einer Variablen speichern kann, deren Typ mit dem Typ des Zeigers übereinstimmt. Mit anderen Worten, ein Zeiger vom Typ int kann nur die Adresse einer Variablen vom Typ int enthalten.



Was sollte der Typ des Zeigers sein, der zum Speichern der Adresse eines Objekts verwendet wird? Um eine Antwort auf diese Frage zu finden, müssen wir verstehen, was der Typ eines bestimmten Objekts ist. Int, char, float? Nein, ein Objekt ist vom Typ Klasse. Mit anderen Worten, der Typ eines Objekts ist die Klasse, zu der es gehört. Als bestimmte Klasse handelt es sich um einen benutzerdefinierten Datentyp, und ein Objekt dieser Klasse gehört zu diesem Typ.

Bisher haben Sie möglicherweise Zeiger auf Referenzvariablen primitiver Datentypen erstellt. Mal sehen, wie wir Zeiger verwenden können, die auf ein bestimmtes Objekt verweisen können.

Fahren Sie mit dem Beispielcode für Zeiger auf Objekte fort



Syntax

Klassenname * Zeigername

#include using namespace std class Car {public: int Anzahl_der_Räder int Anzahl_der_Passagiere void getinfo (int x, inty) {Anzahl_der_Räder = x Anzahl_der_Passagiere = y} void showinfo () {cout<<'Number of Wheels = '< Ausgabe 

Anzahl der Räder = 4

Anzahl der Passagiere = 5

Anzahl der Räder = 6

Fibonacci-Funktion c ++

Anzahl der Passagiere = 8

Auf diese Weise können wir einen Zeiger verwenden, um auf ein Objekt zu verweisen.

Hinweis das. Der Operator wird mit dem Namen des Objekts verwendet und der Operator -> wird verwendet, wenn über einen Zeiger auf die Methode zugegriffen wird.

Fahren Sie mit diesem Artikel über diesen Zeiger in C ++ fort

Dieser Zeiger

Wenn Sie mit Python arbeiten, stoßen Sie möglicherweise auf das Wort 'Selbst'. Die Funktionen von 'dies' und 'Selbst' sind einander ähnlich. 'Dies' ist ein Parameter, der an alle nicht statischen Methoden einer Klasse übergeben wird, die wir nicht sehen können, die aber in nicht statischen oder Instanzmethoden einer Klasse verwendet werden können. Der Zeiger 'This' wird sofort nach dem Aufruf an eine nicht statische Elementfunktion übergeben. Es ist ein implizites Argument für alle nicht statischen Elementfunktionen einer Klasse.

Fahren Sie mit dem Beispielcode für diesen Zeiger fort

#include using namespace std class Auto {privat: int Anzahl_der_Räder int Anzahl_der_Passagiere öffentlich: void getinfo (int x, int y) {this-> Anzahl_der_Räder = x this-> Anzahl_der_Passagiere = y} void showinfo () {cout<<'Number of Wheels = '< Ausgabe 

Anzahl der Räder = 4

Anzahl der Passagiere = 5

Die Adresse des aktuellen Objekts lautet = 0x7ffdbac81740

Anzahl der Räder = 6

Anzahl der Passagiere = 8

Die Adresse des aktuellen Objekts lautet = 0x7ffdbac81748

Das obige Programm gibt uns ein kurzes Verständnis des Schlüsselworts 'this'. Das Schlüsselwort 'this' ist nützlich, wenn der Variablenname in Konflikt gerät oder wenn mehrere Objekte in einer Methode beteiligt sind.

Zeiger auf abgeleitete Klasse

Rollen und Verantwortlichkeiten des Linux-Systemadministrators

Zeiger können nicht nur verwendet werden, um auf die Basisklasse zu verweisen, sondern sie können auch verwendet werden, um auf ein abgeleitetes Klassenobjekt zu verweisen. Wenn beispielsweise die Klasse Car von der Klasse Vehicles erbt, kann ein Zeiger vom Typ Vehicles auch verwendet werden, um auf ein Objekt vom Typ Car zu zeigen.

Fahrzeuge * ptr Fahrzeuge Fahrzeuge Auto Auto ptr = & Fahrzeuge ptr = & Auto

Der einzige Haken dabei ist, dass wir, wenn wir einen Basisklassenzeiger verwenden, um auf das abgeleitete Klassenobjekt zu zeigen, nur auf Basisklassenmethoden zugreifen können, die vom abgeleiteten Klassenobjekt geerbt werden. Wir können mit dem Basisklassenzeiger nicht auf die Mitglieder der abgeleiteten Klasse zugreifen.

Wenn ein Mitglied der Klasse Car den gleichen Namen wie eines der Mitglieder der Klasse Vehicles hat, greift der Zeiger in diesem Fall auf das Mitglied der Basisklasse zu.

Damit sind wir am Ende dieses Artikels über 'Dieser Zeiger in C ++' angelangt. Wenn Sie mehr erfahren möchten, lesen Sie die von Edureka, einem vertrauenswürdigen Online-Lernunternehmen. Der Java J2EE- und SOA-Schulungs- und Zertifizierungskurs von Edureka wurde entwickelt, um Sie für Kern- und fortgeschrittene Java-Konzepte sowie für verschiedene Java-Frameworks wie Hibernate & Spring zu schulen.

Hast du eine Frage an uns? Bitte erwähne es im Kommentarbereich dieses Blogs und wir werden uns so schnell wie möglich bei dir melden.