c 에 개념에서 함수 파라미너 선언은
call by reference / value 를 사용하고,
c++ 로 넘어 오면서 call by pointer 가 추가되어
call by pointer / reference / value 를 사용합니다.
하지만 c에서 사용하던 call by reference 개념이 c++의 call by pointer 개념과 같으며 reference의 개념이 조금 달라졌습니다.
pointer를 주소에 의한 전달이라고하면,
reference의 경우 참조에 의한 전달이라고 합니다.
pointer / reference 차이가 있다면,
(pointer는 알고 계시리라 믿고~)
reference의 경우 함수 내부에서 일반 변수와 같이 포인터 연산자(*, &) 없이 사용하며, 포인터 연산(ptr++)을 할 수 없다는 점이 있습니다.
ex>
void swap(int &x, int &y) { int temp; temp = x; /* save the value at address x */ x = y; /* put y into x */ y = temp; /* put x into y */
return; } |
기본적으로 포인터 강의는 c로 하기 때문에 많이 못들었던 것 같습니다.
저도 이 기회에 알고 넘엉가네요~
글로써 설명하기에 너무 부족하네요 아래 참조 추가드립니다.
programming 에 있어서 가장 중요한 개념이라고 생각됩니다.
모두가 숙지하고 넘어가셨으면 하는 바램입니다.
포인터 개념
http://www.cplusplus.com/doc/tutorial/pointers/
c 함수 호출 타입
http://www.tutorialspoint.com/cprogramming/c_functions.htm
c++ 함수 호출 타입
'Development > Java' 카테고리의 다른 글
Unable to load default SVN Client 발생 시. (0) | 2014.11.10 |
---|---|
What is the defference between Integer.parseInt and Integer.valueOf (0) | 2013.05.01 |
댓글