본문 바로가기
기술면접준비

기술 면접 준비 - Call by Reference가 무엇이고 보통 어떻게 쓰이나요?

by 민경현(John) 2024. 4. 18.

Call by Refernce는 함수 호출 시 인수로 전달되는 파라미터의 참조 값을 함수 내부로 전달하는 방식입니다.

메서드를 호출할 때 파라미터를 전달하는 방법에는 두 가지가 있는데 하나는 call by value이고 하나는 call by reference입니다.

call by value는 함수를 호출 할 때 값을 넘겨주기 때문에 메서드를 호출하는 호출자의 변수와 호출당하는자의 파라미터는 복사된 서로 다른 주소값을 가지는 변수입니다.

값만을 전달하기 때문에 수신자의 파라미터를 수정해도 호출자의 변수에는 아무런 영향이 없습니다.

call by reference는 참조 주소를 직접 전달하기 때문에 호출자의 변수와 수신자의 변수는 완전히 동일한 변수가 되고 매서드 내에서 파라미터를 수정하면 그대로 원본 변수에도 반영됩니다.