Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære This-Nøgleordet | Grundlæggende OOP i C++
C++ OOP

This-Nøgleordet

Stryg for at vise menuen

Nøgleordet this i objektorienteret programmering refererer til den aktuelle objektinstans. Det giver medlemsfunktioner en pointer til det objekt, der har kaldt dem, hvilket muliggør adgang til objektets variabler og funktioner.

Example.cpp

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; }

Når du bruger punktoperatoren (.) til at tilgå medlemsvariabler eller medlemsfunktioner inden for en klasse, peger this-pointeren implicit på det objekt, som medlemsfunktionen kaldes for. Dette er ofte værdifuldt i forskellige scenarier og anvendes almindeligvis for at undgå tvetydighed i variabelnavne.

Example.cpp

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; }

Her kan vi anvende nøgleordet this, da det peger på det aktuelle objekt som en pointer. For at få adgang til dets attributter, skal vi bruge operatoren ->.

main.cpp

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; }

Brugen af this-nøgleordet er en udbredt praksis i forskellige scenarier. Det anvendes ofte, især i store klasser, til at angive, at en variabel er et medlem af klassen og ikke en ekstern parameter eller argument.

question mark

Hvad refererer nøgleordet this til i objektorienteret programmering?

Vælg det korrekte svar

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 7

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Sektion 1. Kapitel 7
some-alt