포인터와 관련된 연산
주소 연산자 &
산술 연산자
간접 연산자
간접 멤버 연산자
pointer라는 변수에 데이터 부분의 주소값이 4만큼 증가함.
즉, 다음/혹은 바구니로 이동하고싶다.
포탈을 타고 해당 주소로 슝~ 이동.
Player라는 struct 만들고 그 객체를 player라고 만들었다.
그리고 간접 연산자를 통해
(*player).hp 이런식으로 접근이 가능함.
어셈블리 보면
Player의 damage접근할때 eax+4를 해서 접근을 함.
어떤 offset을 기준으로 덧셈 연산을 했다.
(player).hp () . 이거 귀찮다.
이거 합친게 '->'이다.
간접연산자 사용해서 객체의 멤버 변수 접근하는 거랑
간접멤버 연산자 사용해서 객체의 멤버 변수에 접근하는거랑
"동작 방식"이 어셈블리에서도 완전히 똑같다.