[C++] this 포인터
Language/C++this 포인터는 자기참조 포인터이다. 즉, 자기 자신을 가리키는 용도로 사용된다.
만약 0x00번지에 할당된 객체의 멤버함수 내에서 this를 사용한다면, 0x00번지를 의미하는 포인터가 된다.
다음은 this를 포인터를 활용한 예이다.
1 2 3 4 5 6 7 8 9 | class AAA { int val; public: AAA(int val) { this->val = val; } }; |
위는 객체의 멤버변수와 생성자의 매개변수가 같은 이름을 사용하고 있다. 원래대로라면 어떤 변수이건간에 지역변수보다 우선시 될 수 없으므로 멤버변수에 접근할 수 없다.
하지만 this로 객체의 주소값을 가르켜 멤버변수에 접근하였다.
물론 매개변수와 멤버변수의 이름을 다르게 하면 쉽게 해결되지만 생각해야할 변수의 이름이 하나 줄어든 것 만으로도 큰 의미라고 할 수 있다.
'Language > C++' 카테고리의 다른 글
[C++] 복사 생성자 (0) | 2015.12.02 |
---|---|
[C++] friend 선언 (0) | 2015.12.02 |
[C++] 생성자(Constructor)와 소멸자(Destructor) (0) | 2015.11.30 |
[C++] 캡슐화 (EnCapsulation) (0) | 2015.11.30 |
[C++] 정보은닉 (Information Hiding) (0) | 2015.11.30 |