[C++]
[C++] this 포인터
Jarvis2304
2022. 10. 14. 03:37
▶ this 포인터
- 포인터, 객체 자신에 대한 포인터
- 클래스의 멤버 함수 내에서만 사용
- 개발자가 선언하는 변수가 아니고, 컴파일러가 선언한 변수
▷ 멤버 함수에 컴파일러에 의해 묵시적으로 삽입 선언되는 매개 변수
▷ this와 객체
▷ this가 필요한 경우
(1) 매개변수의 이름과 멤버 변수의 이름이 같은 경우
(2) 멤버 함수가 객체 자신의 주소를 리턴할 때 (연산자 중복 시에 매우필요)
▷ this의 제약 사항
- 멤버 함수가 아닌 함수에서 this 사용 불가 (객체와의 관련성이 없기 때문에)
- 정적 멤버 함수(static member function)에서 this 사용 불가 (객체가 생기기 전에 static 함수 호출이 있을 수 있기 때문에)
▷ this 포인터의 실체 - 컴파일러에서 처리
참고문헌: 황기태,[명품 C++ Programming] 생능출판(2017), 671P