Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele This-avainsana | OOP:n Perusteet C++:ssa
C++ OOP

This-avainsana

Pyyhkäise näyttääksesi valikon

Avainsana this viittaa olio-ohjelmoinnissa nykyiseen olio-instanssiin. Se tarjoaa jäsenfunktioille osoittimen olioon, joka kutsui niitä, mahdollistaen kyseisen olion muuttujien ja funktioiden käytön.

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

Kun käytät pisteoperaattoria (.) jäsenmuuttujien tai -funktioiden käyttämiseen luokan sisällä, this-osoitin viittaa implisiittisesti olioon, jolle jäsenfunktiota kutsutaan. Tämä on usein hyödyllistä eri tilanteissa ja sitä käytetään yleisesti muuttujien nimien epäselvyyksien välttämiseksi.

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

Tässä voimme hyödyntää this-avainsanaa, koska se osoittaa nykyiseen olioon osoittimena. Sen attribuutteihin pääsemiseksi on käytettävä ->-operaattoria.

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

this-avainsanan käyttö on laajalle levinnyt käytäntö monissa eri tilanteissa. Sitä käytetään usein erityisesti suurissa luokissa osoittamaan, että muuttuja on luokan jäsen eikä ulkoinen parametri tai argumentti.

question mark

Mihin this-avainsana viittaa olio-ohjelmoinnissa?

Valitse oikea vastaus

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 7

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

This-avainsana

Avainsana this viittaa olio-ohjelmoinnissa nykyiseen olio-instanssiin. Se tarjoaa jäsenfunktioille osoittimen olioon, joka kutsui niitä, mahdollistaen kyseisen olion muuttujien ja funktioiden käytön.

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

Kun käytät pisteoperaattoria (.) jäsenmuuttujien tai -funktioiden käyttämiseen luokan sisällä, this-osoitin viittaa implisiittisesti olioon, jolle jäsenfunktiota kutsutaan. Tämä on usein hyödyllistä eri tilanteissa ja sitä käytetään yleisesti muuttujien nimien epäselvyyksien välttämiseksi.

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

Tässä voimme hyödyntää this-avainsanaa, koska se osoittaa nykyiseen olioon osoittimena. Sen attribuutteihin pääsemiseksi on käytettävä ->-operaattoria.

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

this-avainsanan käyttö on laajalle levinnyt käytäntö monissa eri tilanteissa. Sitä käytetään usein erityisesti suurissa luokissa osoittamaan, että muuttuja on luokan jäsen eikä ulkoinen parametri tai argumentti.

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 7
some-alt