는 다음 사항을 고려하십시오 :"간단한"유형의 값을 참조로 전달하는 것이 가치가 있습니까?
int increment1 (const int & x)
{ return x+1; }
int increment2 (const int x)
{ return x+1; }
내가 같은 객체 클래스에 대한 참조를 통과 이해하지만 간단 유형에 대한 참조를 전달하는 가치가 있는지 궁금 해요? 어느 것이 더 최적입니까? 참조로 전달하거나 값으로 전달 (simle 유형의 경우)
질문에 다른 부분을 추가 할 수 있습니까? 'increment2'에서'const'의 핵심은 무엇입니까? 호출자가 호출 한 사람이 값으로 전달되는 인수로 처리하는 이유는 무엇입니까? –
이 경우 const의 포인트는 함수 인수를 변경 불가능하게 유지하는 것입니다. 이는 함수 작성자가 더 중요하게 생각합니다. 함수의 어디서나 원래 인수를 계속 처리합니다. – nasmorn
'const'는 호출자에게도 큰 영향을 미칩니다 :'f (1)'과 같은 정수형 리터럴 인자로'void f (int & x)'를 호출 할 수는 없지만'void f (const int & x)'를 호출합니다. –