본문 바로가기
[ C++ ]/- C++ 문법정리

C++ 07 [this 포인터]

by MRG 2023. 3. 24.
728x90
반응형

▣ this 포인터 : 객체 자신에 주소 포인터

 

▣ this->num 코드는 test객체의 포인터(클래스 Test의  int num = 0)를 접근하여 대입

 

▣ 클래스의 멤버함수와 생성자함수에서만  this 사용이 가능하다.

 

▣ 멤버변수와 멤버함수의 매개변수의 이름이 동일할 때 this로 객체 자신을 접근하여 사용한다.

 

▣ 멤버 함수에서 자신의 주소를 리턴해야 할 때 사용한다.

 

▣ this는 정적 멤버함수(static 함수)에서는 this를 사용할 수 없다.

 

 

▣ 멤버함수에서 객체의 주소를 this로 접근이 가능하다.

 

▣ 위에 코드를 풀어서 작성하면 이렇게 test.testfunc(&test, 10);처럼 주소를 매개변수로 전달하고 

컴파일러가 void testfunc(Test* this, int num) 코드에서 Test* this 객체포인터변수로 받아온다. 

그럼 this에는 현재 자신의 객체에 대한 주소를 가리키고 있기 때문에 -> 포인터 접근이 가능하다.

 

https://ko.wikipedia.org/wiki/C%2B%2B

 

C++ - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. C++패러다임프로그래밍 패러다임: 절차적 프로그래밍, 함수형 프로그래밍, 객체 지향 프로그래밍, 제네릭 프로그래밍설계자비야네 스트롭스트룹발표일1985년(38

ko.wikipedia.org

 

728x90
반응형

'[ C++ ] > - C++ 문법정리' 카테고리의 다른 글

C++ 09 [call by value, call by reference]  (0) 2023.03.28
C++ 08 [string]  (0) 2023.03.28
C++ 06 [메모리 할당]  (0) 2023.03.24
C++ 05 [객체배열]  (0) 2023.03.24
C++ 04 [인라인 함수]  (0) 2023.03.22

댓글