어떤 클래스의 맴버에 접근할때this.Member ,this-> Member 두가지 접근 방법이있는데 차이점이뭐임?함수에 파라미터 넘겨줄때 둘중 하나의 방식만 허용되는 경우가 있어서,물어봅니다.
this. 는 없음.
this 는 클래스나 구조체 내부에 예약된 이름의 포인터( 그자신의 시작주소 )기 때문
some_object.member 의 경우는 some_object 가 변수로 선언되어 있을때의 이야기.
some_object->member 의 경우는 some_object 가 포인터 변수로 선언되어 있을때의 이야기
그러니 some_object->member 의 다른 말은
(*some_object).member 임.
some_object 포인터 변수의 주소가 가리키는 내용에서 member 를 접근한다는 표현의 syntactic sugar 임.
함수의 파라메터로 클래스 전체를 넘기는게 비쌀때나, 복사를 하면 안될경우 포인터( 주소 )를 넘기게 되는데, 그럴때는 -> 를 쓰게 되는 것.