Nagie's DevStory
[CPP] 23. this 포인터 본문
728x90
this 포인터란 클래스 내부에서 사용되는 포인터인데
자기 자신을 가리키는 용도로 사용되는 조금 특이한 포인터다.
자기 자신을 가리키는 용도로 왜 사용해야 하는지 궁금할 수도 있는데
이는 함수 파라미터의 이름을 데이터 멤버와 중복된 이름을 사용해서 충돌을 방지하기 위해 사용하거나
이 클래스 내부에 있는 멤버라고 명시를 하고 싶을 때 사용된다.
다음은 this 포인터의 사용예시다.
class User {
private:
std::string name;
public :
User(std::string name) {
this->name = name; //this 포인터 사용으로 인해 모호함이 사라졌다.
}
};
또한 this 포인터는 비정적 멤버에만 사용할 수 있으며 정적 멤버에 this 포인터를 사용하게 된다면 IDE에서 에러를 띄운다.
728x90
Comments