C++에서 레퍼런스는 내가알기론 const ptr이랑 동일하다고 알고있는데
포인터는 4바이트 혹은 8바이트의 메모리를 사용하잖아?
그럼 레퍼런스도 똑같이 4 혹은 8바이트 사용하는거 아니였음?
내가 잘못알고있었나 구글보니깐 어떤블로그는 아에 메모리를 안쓰는것처럼 얘기하네
C++에서 레퍼런스는 내가알기론 const ptr이랑 동일하다고 알고있는데
포인터는 4바이트 혹은 8바이트의 메모리를 사용하잖아?
그럼 레퍼런스도 똑같이 4 혹은 8바이트 사용하는거 아니였음?
내가 잘못알고있었나 구글보니깐 어떤블로그는 아에 메모리를 안쓰는것처럼 얘기하네
ㅇㅇ 아예 메모리를 안써
근데 메모리를 쓰는경우가 있는데 그건 const int &a = 123; 이런식으로 리터럴을 참조할때 메모리를 사용하는 걸로 알고있는데
나도 ㅈ밥이라 틀렸을 가능성이 있음
그리고 const ptr이라고 하면 의미전달이 잘 안됨 asterisk 뒤에 const가 있는지 앞에 const가 있는지 또 달라지잖아
ㅇㅎ 일단 잘못알고있었다는점에서 좀 충격이었고 const int* const num;이런식으로 선언하니깐 const ptr 하면되는줄알앗음
그런 의미라면 const ptr이랑은 완전 다르지 int &b = a; b = 2; 이런식으로 값 변경 가능하잖어
그러네 ptr const로 했어야됐네
const ptr이랑 달라요
c++는 쉽게말하자면 어떤 변수에 대한 숏컷임 메모리를 생성하는게 아니라 그변수에 대한 숏컷을 선언한다고 생각하면 이해가 될거다