Minwoo Dev.
[C++] 참조자 본문
728x90
반응형
SMALL
참조자
참조자는 변수에 다른 이름, 즉 별명을 붙여주는 것이다.
#include <iostream>
using namespace std;
int main(void)
{
int num = 20;
cout << "num : " << num << endl;
int &ref = num;
cout << "ref : " << ref << endl;
return 0;
}
위 코드를 보면 num이라는 변수에는 20이 담겨있고,
int &ref = num;을 사용하여 num 변수의 참조자로 ref를 사용하고 있다.
즉, ref는 num의 참조자 인것이다.
ref를 출력하면 num을 출력한 것과 같이 20이 출력된다.
위 코드에서, ref는 num의 별명이 된 것이다.
이러한 참조자는 아래와 같은 특징이 있다.
특징 1. 변수만을 참조할 수 있다.
#include <iostream>
using namespace std;
int main(void)
{
int &ref = 20; // 20이라는 상수 값을 사용하면 안된다!!
cout << "ref : " << ref << endl;
return 0;
}
위처럼 20이라는 값을 참조하려고 한다면, 오류가 발생한다.
참조자는 변수에 별명을 붙이는 것이기 때문에 꼭 변수를 사용해야 한다.
특징 2. 선언과 동시에 참조를 해야한다.
#include <iostream>
using namespace std;
int main(void)
{
int num = 20;
cout << "num : " << num << endl;
int &ref; // 선언과 동시에 참조해야한다!!
ref=num;
cout << "ref : " << ref << endl;
return 0;
}
위 코드에서는 참조자를 int &ref와 ref=num으로 나누어 작성하였다.
이렇게 작성하면 에러가 발생한다.
참조자를 선언할 때에는 선언과 동시에 값을 할당하여야 한다.
int &ref=NULL;
추가로, 참조자를 선언할 때 위처럼 null을 선언해서도 안된다.
[C++] 참조자를 이용하여 함수 만들기, Call by reference with reference
참조자를 이용해서도 포인터를 사용하는 것처럼 Call-by-reference 형식의 함수를 만들 수 있다. Call-by-reference 함수 외부의 값을 받아와 함수 내부에서 값을 변경할 수 있는 형태 C언어에서는 포인터
lmw1119.tistory.com
728x90
반응형
LIST
'C++' 카테고리의 다른 글
[C++] const 참조자, const 참조자를 사용한 Call-by-reference (0) | 2024.03.10 |
---|---|
[C++] 참조자를 이용하여 함수 만들기, Call by reference with reference (0) | 2024.03.10 |
[C++] 윤성우의 열혈 C++ 프로그래밍 Ch04-3 : C++ 기반의 데이터 입출력 문제풀이 (0) | 2024.03.09 |
[C++] 윤성우의 열혈 C++ 프로그래밍 Ch04-2 : 다양한 클래스의 정의 문제풀이 (1) | 2024.03.09 |
[C++] 윤성우의 열혈 C++ 프로그래밍 Ch04-1 : 정보 은닉과 const 문제풀이 (0) | 2024.03.09 |