Das This-Schlüsselwort
Das Schlüsselwort this
in der objektorientierten Programmierung bezieht sich auf die aktuelle Objektinstanz. Es stellt den Memberfunktionen einen Zeiger auf das Objekt zur Verfügung, das sie aufgerufen hat, und ermöglicht so den Zugriff auf die Variablen und Funktionen dieses Objekts.
Example.cpp
12345678910111213#include <iostream> class Example { public: Example* get_address() { return this; } }; int main() { Example obj; std::cout << &obj << std::endl; std::cout << obj.get_address() << std::endl; }
Wenn der Punktoperator (.
) verwendet wird, um auf Membervariablen oder Memberfunktionen innerhalb einer Klasse zuzugreifen, verweist der this
-Zeiger implizit auf das Objekt, für das die Memberfunktion aufgerufen wird. Dies ist in verschiedenen Szenarien nützlich und wird häufig eingesetzt, um Mehrdeutigkeiten bei Variablennamen zu vermeiden.
Example.cpp
123456789101112131415#include <iostream> class Example { public: void multiply(int number) { number *= number; } int number; }; int main() { Example obj; obj.number = 2; obj.multiply(5); std::cout << obj.number; }
Hier können wir das Schlüsselwort this
verwenden, da es auf das aktuelle Objekt als Zeiger verweist. Um auf dessen Attribute zuzugreifen, müssen wir den Operator ->
verwenden.
main.cpp
123456789101112131415#include <iostream> class Example { public: void multiply(int number) { this->number *= number; } int number; }; int main() { Example obj; obj.number = 2; obj.multiply(5); std::cout << obj.number; }
Die Verwendung des Schlüsselworts this
ist in verschiedenen Szenarien weit verbreitet. Es wird häufig, insbesondere in großen Klassen, eingesetzt, um zu kennzeichnen, dass eine Variable ein Mitglied der Klassen ist und kein externer Parameter oder Argument.
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen