C에서 참조에 의한 전달과 값에 의한 전달
C에서 함수에 인수를 전달할 때 두 가지 기본 방법이 있습니다. 즉, 값에 의한 전달과 참조로 전달됩니다. 효과적인 코딩을 위해서는 이 두 접근 방식의 차이점을 이해하는 것이 중요합니다.
값에 의한 전달
값에 의한 전달에서는 인수의 복사본이 함수 범위 내에서 생성됩니다. . 이 사본에는 원래 주장과 구별되는 자체 참조가 있습니다. 따라서 함수 내에서 지역 변수를 수정해도 함수 외부의 원본 개체에는 아무런 영향이 없습니다.
참조로 전달
반면에 참조로 전달은 함수에 원본 객체에 대한 직접 액세스 권한을 부여합니다. 그러나 이 용어에 대한 다양한 해석이 존재합니다.
인수 대 매개변수 참조
일부 개인은 참조에 의한 전달을 인수 자체가 아닌 참조되는 개체를 전달하는 것으로 참조합니다. . 이는 함수 내에서 새 객체가 생성되는 값에 의한 전달과는 다릅니다.
객체의 가변성
참조에 의한 전달은 객체가 객체를 생성할 수 없음을 의미한다고 주장하는 사람들도 있습니다. 호출 수신자 내에서 수정될 수 있습니다. 이 관점에서 객체의 값을 수정하는 함수는 함수 범위 내부와 외부 모두에 영향을 미칩니다.
참조에 의한 전달의 정의
혼란을 명확히 하기 위해 다음과 같이 참조로 전달을 정의합니다.
해당 매개변수에 참조 유형이 있고 직접 바인딩되는 경우에만 인수가 참조로 전달됩니다. 인수 표현식. 다른 모든 경우에는 값에 의한 전달입니다.
참조에 의한 전달과 값의 예
다음 예를 고려하세요.
값 전달:
Pass와 같은 리터럴 값 전달 참고로:
참조 및 값으로 전달의 의미
위 내용은 C의 참조와 값으로 전달: 차이점은 무엇이며 언제 어느 것을 사용해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!