변수와 참조자를 동시에 선언할 필요가 있겠는가?

int num = 20;
int &ref = num;

이는 학습을 위한코드이다.. 참조자의 활용에는 함수가 큰위치를 차지한다.

Call-by-value & Call-by-reference

참조자를 이용한 Call-by-reference

void SwapByRef2(int &ref1, int &ref2)
{
	int temp=ref1;
	ref1=ref2;
	ref2=temp;
}

참조자를 이용한 Call-by-reference의 황당함과 const 참조자

int num=24;
HappyFunc(num);
cout<<num<<endl;

C 언어의 관점에서 위에 코드는 24를 출력하지만 C++ 의 참조자로 인해 함수가 어떻게 정의되어있는가에 따라 무슨값이 출력될수 없다.

위와 같은 단점 때문에 참조자를 잘 쓰지 않는 C++ 프로그래머들도 있다고 한다.

반환형이 참조형(reference type)인 경우

int& RefRetFuncOne(int &ref)
{
	ref++;
	return ref;
}

잘못된 참조의 반환