[C++] 6.14 참조변수 reference variable
by #독개#/*
참조는 한주소의 또다른 별칭처럼 사용할 수 있다. 진짜 그 주소에 별칭만 추가한것
포인터는 메모리공간을 할당받아 거기에 주소를 적어둔것
레퍼런스,포인터는 반드시 선언시 초기화 해야한다 (단 const 선언시에는 가능)
재할당(re-assign)가능
*/
int doSomething(int &y) //그냥 int y 로하면 다른 메모리공간에 잠시 y를 선언하는것이니 느리다 참조시 더빠름
{
y = 3; // 매개변수에 const int &y 이렇게하면 변경할수 없다 요즘 제일 많이쓰는 방법
return 0;
}
struct Something
{
int v1;
int v2;
};
struct Other
{
Something st;
};
#include <iostream>
using namespace std;
int main()
{
int x = 5; //int 4byte메모리 공간을 할당받고, 별칭을 x라 지정
int& ref = x; //x의 주소값에 ref 별칭 추가
cout << ref << endl;
doSomething(ref);
cout << ref << endl;
int* ptr = &x;
cout << &x << endl; //004FFD30
cout << &ref << endl; //004FFD30
cout << &ptr << endl; //004FFD18
///--------------------------------------------------------------------------------
Other ot;
//int v1 = ot.st.v1; //이렇게하면 변수뭐 할때마다 ot.st.v1해줘야함 레퍼런스하면 편하게 계속사용가능
int& v1 = ot.st.v1;
v1 = 1
return 0;
}
🐱👓독하게 개발
'🔥 프로그래밍 학습 > C++' 카테고리의 다른 글
[C++] 6.16 포인터와 참조의 맴버 선택 (0) | 2022.11.16 |
---|---|
[C++] 6.15 참조 const / refercence const (0) | 2022.11.16 |
[C++] 6.13 const 포인터 , 포인터 const (0) | 2022.11.16 |
[C++] 6.13 포인터와 const (0) | 2022.11.15 |
[C++] 6.12 동적 할당 배열 (0) | 2022.11.15 |
블로그의 정보
독한 개발자
#독개#