Programming/C++

[c++] RefPtr

OKOK 2017. 5. 14. 15:03

#include <iostream>

using namespace  std;


int main(void)

{

int num = 12;

int *ptr = &num;

int **dptr = &ptr;


int &ref = num;

int *(&pref) = ptr;

int **(&dpref) = dptr;


cout << ref << endl;

cout << *pref << endl;

cout << **dpref << endl;

return 0;



1. 먼저 변수 num 상자 생성, ptr 포인터 생성, dptr 더블 포인터 생성하고 각각의 관계를 화살표로 나타낸다.

2. & 연산자는 단순하게 별칭을 붙이는 것이다. 그러므로 상자 위에 이름을 같이 넣어준다.

3. ** 연산자는 가르키는 것을 값을 나타내는 것이므로 .. 관계만 따라가면 쉽다.

4. 상자하나 만들고 그것 가르키는 것 2개 만들고 그 2개에 대한 별칭을 붙여준 예제