l
완전 이진트리 검사하는 것 구현하고 있는데,
30번쨰 줄에 매개변수 const Node& n 이 뭘 의미하는 건지 모르겠어...
매개변수로 const Node* n 을 쓰면 n->value()로 값 불러올 수 있고,
n->left()로 왼쪽 노드 가져올 수 있고, n->right()로 오른쪽 노드 가져올 수 있어서 이해가는데,
&가 무슨 의미인지 모르겠어ㅜㅜ
l
완전 이진트리 검사하는 것 구현하고 있는데,
30번쨰 줄에 매개변수 const Node& n 이 뭘 의미하는 건지 모르겠어...
매개변수로 const Node* n 을 쓰면 n->value()로 값 불러올 수 있고,
n->left()로 왼쪽 노드 가져올 수 있고, n->right()로 오른쪽 노드 가져올 수 있어서 이해가는데,
&가 무슨 의미인지 모르겠어ㅜㅜ
정답은 아는데 c++ 핵고수 아니라서 지나갈게
코드 짜준 사람한테 물어보지 그러니 ㅇㅅㅇ
그냥 하고싶은대로 한거 아닌감 ㅇㅅㅇ - dc App
이건 기본을 모르는건데.. pass by value vs pass by reference
&붙으면 파라미터 변수는 참조형으로 접근한다는거 &없는 놈들은 메모리 주소 새롭게 할당해서 변수하나 새로파서 값넣고 쓰는거고, &붙으면 전해준 매개변수 메모리에 그대로 참조 접근해서 사용한다는거임
아 그러면 & 붙는 변수를 매개변수로 받은 함수 내에서, 값을 변경하면, 해당 변수는 참조값이기 때문에 함수를 빠져나와도 변경상태가 반영되는 거임?
ㅇㅇ 정확함 근데 저놈은 const 붙어있어서 변경불가이긴해
아 이제 이해됨 ㄳㄳ * 랑 &랑 헷갈려서 그런 것 같음. 매개변수에 *는 포인터 주소값 받아올 때 쓰고, &는 함수 외부 변수를 함수 내부에서도 변경 가능하게 할 때 쓰나보네
핵초보만을 잘못쓴거 아님?
기본도 안되어있는놈이 핵고수 타령하네ㅋㅋ