This-Avainsana
Avainsana this
oliopohjaisessa ohjelmoinnissa viittaa nykyiseen olio-instanssiin. Se tarjoaa jäsenfunktioille osoittimen olioon, joka kutsui niitä, mahdollistaen kyseisen olion muuttujien ja funktioiden käytön.
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; }
Kun käytät pisteoperaattoria (.
) jäsenmuuttujien tai -funktioiden käyttämiseen luokan sisällä, this
-osoitin viittaa implisiittisesti siihen olioon, jolle jäsenfunktiota kutsutaan. Tämä on usein hyödyllistä erilaisissa tilanteissa ja sitä käytetään yleisesti muuttujien nimien epäselvyyksien välttämiseksi.
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; }
Tässä voimme hyödyntää this
-avainsanaa, koska se osoittaa nykyiseen olioon osoittimena. Sen attribuutteihin pääsemiseksi on käytettävä ->
-operaattoria.
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; }
this
-avainsanan käyttö on laajalle levinnyt käytäntö useissa eri tilanteissa. Sitä käytetään usein erityisesti suurissa luokissa osoittamaan, että muuttuja on luokan jäsen eikä ulkoinen parametri tai argumentti.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 3.13
This-Avainsana
Pyyhkäise näyttääksesi valikon
Avainsana this
oliopohjaisessa ohjelmoinnissa viittaa nykyiseen olio-instanssiin. Se tarjoaa jäsenfunktioille osoittimen olioon, joka kutsui niitä, mahdollistaen kyseisen olion muuttujien ja funktioiden käytön.
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; }
Kun käytät pisteoperaattoria (.
) jäsenmuuttujien tai -funktioiden käyttämiseen luokan sisällä, this
-osoitin viittaa implisiittisesti siihen olioon, jolle jäsenfunktiota kutsutaan. Tämä on usein hyödyllistä erilaisissa tilanteissa ja sitä käytetään yleisesti muuttujien nimien epäselvyyksien välttämiseksi.
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; }
Tässä voimme hyödyntää this
-avainsanaa, koska se osoittaa nykyiseen olioon osoittimena. Sen attribuutteihin pääsemiseksi on käytettävä ->
-operaattoria.
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; }
this
-avainsanan käyttö on laajalle levinnyt käytäntö useissa eri tilanteissa. Sitä käytetään usein erityisesti suurissa luokissa osoittamaan, että muuttuja on luokan jäsen eikä ulkoinen parametri tai argumentti.
Kiitos palautteestasi!