This-nøkkelordet
Nøkkelordet this
i objektorientert programmering refererer til den nåværende objektinstansen. Det gir medlemsfunksjoner en peker til objektet som påkalte dem, slik at de får tilgang til objektets variabler og funksjoner.
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 bruker punktumoperatoren (.
) for å få tilgang til medlemsvariabler eller medlemsfunksjoner innenfor en klasse, peker this
-pekeren implisitt til objektet som medlemsfunksjonen kalles for. Dette er ofte nyttig i ulike situasjoner og brukes ofte for å unngå tvetydighet i variabelnavn.
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 bruke nøkkelordet this
siden det peker på det nåværende objektet som en peker. For å få tilgang til dets attributter, må vi bruke operatoren ->
.
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; }
Bruken av nøkkelordet this
er utbredt i ulike scenarier. Det benyttes ofte, spesielt i store klasser, for å angi at en variabel er et medlem av klassen og ikke en ekstern parameter eller argument.
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Awesome!
Completion rate improved to 3.13
This-nøkkelordet
Sveip for å vise menyen
Nøkkelordet this
i objektorientert programmering refererer til den nåværende objektinstansen. Det gir medlemsfunksjoner en peker til objektet som påkalte dem, slik at de får tilgang til objektets variabler og funksjoner.
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 bruker punktumoperatoren (.
) for å få tilgang til medlemsvariabler eller medlemsfunksjoner innenfor en klasse, peker this
-pekeren implisitt til objektet som medlemsfunksjonen kalles for. Dette er ofte nyttig i ulike situasjoner og brukes ofte for å unngå tvetydighet i variabelnavn.
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 bruke nøkkelordet this
siden det peker på det nåværende objektet som en peker. For å få tilgang til dets attributter, må vi bruke operatoren ->
.
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; }
Bruken av nøkkelordet this
er utbredt i ulike scenarier. Det benyttes ofte, spesielt i store klasser, for å angi at en variabel er et medlem av klassen og ikke en ekstern parameter eller argument.
Takk for tilbakemeldingene dine!