C++09(값으로 호출, 참조로 호출)



▣ 변수나 객체를 매개변수로 전달하면 call-by-value가 됩니다.

▣ 객체를 매개변수로 전달하면 객체가 복사되어 전달되므로 전달된 함수에서 객체의 값을 변경해도 원본에는 영향을 미치지 않습니다.

▣ 파라미터 객체의 생성자는 호출되지 않고 소멸자만 호출되어 컴파일에 의해 소멸됩니다.


▣ 오브젝트의 주소로 파라미터를 넘기면 그 주소로 호출이 됩니다.

▣ 객체의 주소가 전달되기 때문에 호출된 함수의 값이 변경되면 원래 객체에 영향을 미칩니다.

▣ 객체의 주소로 매개변수가 전달되더라도 원래 객체의 생성자와 소멸자만 호출됩니다.