본문 바로가기
프로그래밍/C++

this 포인터

by 리뷰하는 (게임)프로그래머_리프TV 2010. 3. 21.




this 포인터,
자기 자신을 호출하는 포인터.
자기 참조 포인터라고도 하는데

크게 어려운건 없다.


#include <iostream>

class AAA
{
	int n;
public:
	AAA(int n)
	{
		// 컴파일에 문제는 없지만
		// 프로그래머가 원하는 결과는 나오지 않을 것이다.
		//n = n;		// n은 class AAA의 n이 아닌 인자 n만을 가지고 값을 넣기 때문이다.
		// 다음처럼 해주면 된다.
		this->n = n;
	}
	AAA* GetThis()
	{
		return this;
	}
};

void main()
{
	AAA aaa(10);

	// this 포인터는 그 클래스의 주소값을 가르키고 있기 때문에
	// 다음처럼 하면 aaa의 주소를 리턴하여 출력한다.
	std::cout << aaa.GetThis() << std::endl;
}



'프로그래밍 > C++' 카테고리의 다른 글

복사 생성자, 디폴트 생성자 그리고 디폴트 복사 생성자.  (0) 2010.03.21
friend  (0) 2010.03.21
객체 포인터 배열  (0) 2010.03.21
클래스의 활용  (0) 2010.03.20
class(클래스) ~ C++의 꽃 ~  (0) 2010.03.19