본문으로 바로가기

[C++]참조자(reference) 1

category 프로그래밍/C++ 2017. 4. 4. 23:42
728x90
반응형

안녕하세요. letitkang입니다.


요즘 너무 바쁘게 살다보니 글을 못쓰고있네요 ㅠ


오늘 글을 쓰겠습니다!!!


'윤성우의 C++ 열혈강의' 공부하면서 글작성 하고있습니다!


 

 

 



오늘의 주제는 reference 참조자입니다.


1. 참조자란?


C++에서 등장한 것이 참조자입니다.


참조자는 포인터랑 비슷하지만 비슷하지않은 비슷한 것입니다.


이런 비유가 알맞다고 보고있습니다


먼저 변수란 무엇일까요? 변수의 정의를 알아보겠습니다.


변수 : 할당된 메모리 공간에 붙여진 이름이라고 볼 수 있습니다.


우리는 이 변수를 통해서 메모리 공간에 접근이 가능합니다.


참조자는 이 변수에 다른 이름을 부여할 수 있습니다.


간단하게 그렇게 생각하시면됩니다. 하나의 이름을 더 붙인다는...


2. 참조자 선언


먼저 변수 한개를 선언하고 초기화시켜보겠습니다.


===============================================================================================

int num1 = 10;

===============================================================================================

이 뜻은 num1이라는 변수 안에 10의 값을 넣었습니다.


밑은 참조자를 실제 활용한 것입니다.


===============================================================================================

int &num2=num1;

===============================================================================================

 

 

 



num2는 num1의 참조자가 됩니다.

변수를 선언할 때 &을 붙이게 되면, 참조자를 선언 할 수있습니다.


보통은 &는 주소값을 반환하는 것이지만, 지금상황에서는 참조자에 쓰이고 있습니다.


참조자 num2를 선언하고 num1로 초기화 하였습니다.


이 뜻은 num1의 변수에 num2라는 이름을 붙이다는 뜻입니다.


포인터와는 명백히 다릅니다.


그래서 num1을 출력하던지, num2를 출력하던지 모두 10의 값이 나옵니다.


참조자는 변수에 별명 혹은 별칭 하나를 붙여주는 것이라고 보면 됩니다.


3. 참조자의 제한


===============================================================================================

int num1=100;
int &num2=num1;
int &num3=num1;
int &num4=num1;
int &num5=num1;

===============================================================================================

위의 소스처럼 참조자의 수에는 제한이 없습니다.


무한대로 가능합니다.


===============================================================================================

int num1=100;
int &num2=num1;
int &num3=num2;
int &num4=num3;
int &num5=num4;

===============================================================================================


참조자를 참조자 대상으로도 초기화 가능합니다.


생각보다 쉽죠? 설명은 거창한데말이죠


4. 참조자의 선언 가능 범위


참조자의 선언 가능 범위에 대해 알아보겠습니다.


참조자는 오직 변수에 대해서만 선언이 가능합니다.


참조자는 선언됨과 동시에 누군가를 참조해야만 합니다.


오늘 제일 중요한 것입니다. 밑줄 쫙 빨간색 펜으로 칠칠


2가지는 꼭 알아둬야 됩니다.


===============================================================================================

int &ref=30;            (X)
int &ref;                  (X)
int &ref=NULL;        (X)


===============================================================================================


위의 케이스가 대표으로 실수 많이하는 부분입니다.


무조건! 무조건! 참조자는 선언과 동시에 변수를 참조해야합니다.


 

 



오늘은 참조자에 대해 간단히 알아보았는데요.


다음 시간에는 참조자에 대해 더욱더 깊게 알아보겠습니다.


읽어주셔서 감사합니다.

728x90
반응형

'프로그래밍 > C++' 카테고리의 다른 글

[C++]참조자(reference) 3  (0) 2017.04.11
[C++]참조자(reference) 2  (0) 2017.04.09
[C++]자료형 bool  (0) 2017.03.30
[C++]C++ 들어가기전에...  (0) 2017.03.28
[C++]이름공간(namespace) (2)  (0) 2017.02.20