2010-04-18 3 views
0

가능한 중복 :
When pass-by-pointer is preferred to pass-by-reference in C++?C++ 함수 인수 검증 (참조 인수 대 포인터)

안녕하세요, 당신은 더 나은 프로그래밍 연습을 고려하는 일

: 오브젝트의 수수 함수에 대한 포인터 또는 참조로 사용됩니다.
입력 유효성 검사를 위해 무엇을합니까?

감사합니다.

+0

포인터가 아닌 경우 "주소 인수"란 무엇입니까? –

+4

참조 http://stackoverflow.com/questions/2550377/when-pass-by-pointer-is-preferred-to-pass-by-reference-in-c/2550489#2550489 – Stephen

+0

또한 "주소 논쟁 "당신은"참조 "를 의미합니까? – Stephen

답변

4

참조를 사용하는 것이 더 나은 C++ 스타일입니다. 이것에 대한 한 가지 이점은 참조로 전달할 때 참조가 null이 될 수 없기 때문에 더 이상 null이 아닌지 확인할 필요가 없다는 것입니다. 또한 매개 변수를 수정하지 않으면 상수 참조를 전달해야한다는 것을 추가해야합니다. (프리미티브 또는 작은 비 다형성 객체의 경우 수정하지 않을 경우 값으로 전달할 수도 있습니다.

2

아마 청소기이기 때문에 참조로 이동하십시오. 포인터를 사용하면 매우 어색한 구문이 있습니다.

유효성 확인과 관련하여 ASSERT를 수행합니다.

+0

디버그 어설 션 또는 부스트 정적 어설 션 같은 것을 의미합니까? – Andrew

+0

어설 션 디버그. –