Nagie's DevStory

[CPP] 23. this 포인터 본문

Programming/C++

[CPP] 23. this 포인터

Nagie 2023. 10. 21. 22:05
728x90

this 포인터란 클래스 내부에서 사용되는 포인터인데

자기 자신을 가리키는 용도로 사용되는 조금 특이한 포인터다.

자기 자신을 가리키는 용도로 왜 사용해야 하는지 궁금할 수도 있는데

이는 함수 파라미터의 이름을 데이터 멤버와 중복된 이름을 사용해서 충돌을 방지하기 위해 사용하거나

이 클래스 내부에 있는 멤버라고 명시를 하고 싶을 때 사용된다.

다음은 this 포인터의 사용예시다.

 

class User {
private:

	std::string name;

public :

	User(std::string name) {

		this->name = name; //this 포인터 사용으로 인해 모호함이 사라졌다.
	}

};

 

또한 this 포인터는 비정적 멤버에만 사용할 수 있으며 정적 멤버에 this 포인터를 사용하게 된다면 IDE에서 에러를 띄운다.

728x90
Comments