C C++/C++

[C++] this

개발하는꼬물이 2018. 2. 17. 16:16

** this 라는 것은 객체 자신에 대한 포인터로써, 클래스의 멤버함수 내부에서 사용 가능!


그렇담, this는 왜 사용하는 것일까? 

→ 1. 객체 자기 자신의 주소를 리턴하기 위해

     2. 클래스의 멤버변수와 매개변수가 동일할 때, 이를 구분짓기 위해

     3. 생성자나 멤버함수를 만들 때, 매개변수를 입력할 경우


#include <iostream> using namespace std; class MyData { private: int data; public: void SetMyData(int param_data) { this->data = param_data; // 클래스의 멤버변수인 data에 param_data 값을 대입하겠다는 의미

// data와 param_data처럼 변수 명이 다를 경우는 굳이 this 안써도 됨 } } void main() { MyData temp; temp.SetMyData(5); }


+) this-> (*this). 은 동일한 의미!