728x90
함수에 전달된 인수는 원본 데이터에 대한 참조(레퍼런스) 로 처리된다.
따라서 함수 내에서 인수를 수정하면 호출자에게도 영향을 미치게 된다.
void modifyReference(int &x) {
x = x * 2;
}
int main() {
int num = 5;
modifyReference(num);
// num은 이제 10입니다.
return 0;
}
매개변수로 받아온 값을 수정하면 결과값 또한 바뀌는걸 볼 수 있다.
장점
- 메모리 효율
- 데이터를 복사하지 않고도 데이터 수정이 가능함으로 메모리 사용량을 절약할 수 있다.
- 성능 향상
- 데이터를 복사하지 않음으로 복사하는 과정을 생략할 수 있다.
단점
- 수정가능
- 함수 내에서 수정을 할때 호출자의 데이터가 수정될 수 있음으로 의도치 않은 데이터변경이 발생할 수 있다.
728x90
'컴퓨터 용어 정리' 카테고리의 다른 글
DirectX SamplerState (0) | 2023.10.19 |
---|---|
HeightMap (0) | 2023.10.19 |
값에 의한 호출 ( Call by Value ) (0) | 2023.10.12 |
DirectX 3D 행렬연산 (0) | 2023.10.12 |
단위행렬(Identity matrix) (0) | 2023.10.12 |