반응형
c++ 에서 class를 작성할때 class내부의 변수와 메서드의 파라미터의 변수의 이름이 같을경우
메서드 구현시 변수를 사용하면 class 내부의 변수를 사용하는건지 파라미터의 변수를 사용하는건지
의미가 모호해 질 수가 있다. 이럴 경우에 this포인터를 사용하여 모호성을 해소를한다.
this 포인터를 사용하면 내부의 변수를 사용한다는 의미를 갖게하고
사용하지 않을 경우 파라미터의 변수를 사용한다는 의미를 갖게 한다.
1 2 3 4 5 6 7 | class test_class{ public: int value; void set_value(int value){ this->value = value; } }; | cs |
위의 코드에서 this->value는 위에 선언된 클래스 내부 변수 value를 가르키고
값으로 받는 value는 set_value의 파라미터인 value값을 받는다.
반응형
'프로그래밍 > c++' 카테고리의 다른 글
[c++] virtual(가상함수,순수가상함수) (0) | 2018.12.19 |
---|---|
[c++] class의 상속 (부모class 및 자식class) (0) | 2018.12.19 |
[c++] class의 생성자 및 소멸자 (0) | 2018.12.19 |
[c++] class 정의 및 접근제한자 (0) | 2018.12.19 |
[c++] 객체지향 프로그래밍에서의 캡슐화란? (0) | 2018.12.19 |