1.5.1 인수
C++는 두 가지 인수 전달 형태인 값에 의한 호출과 레퍼런스에 의한 호출을 구별한다.
1.5.1.1 값에 의한 호출
함수에 인수를 전달하면 기본적으로 복사본이 만들어진다. 예를 들어 다음 함수는 x를 증가시키지만 함수 외부에서는 이를 알지 못한다.
void increment(int x) { x++; } int main() { int i = 4; increment(i); // i를 증가시키지 않는다. cout << "i is " << i << ‘\n’; }
출력 결과는 4다. increment 함수 내의 x++ 연산은 복사된 지역 변수 i만 증가시키고, main 함수 내의 변수 i 자체는 증가시키지 않는다. 이러한 종류의 인수 전달을 값에 의한 호출(Call-by-Value) 또는 값에 의한 전달(Pass-by-Value)이라고 한다.