Home C++ 개념 정리 : 참조자(Reference)
Post
Cancel

C++ 개념 정리 : 참조자(Reference)

레퍼런스

개념

  • 특정 변수의 실제 이름 대신 사용할 수 있는 별명

사용 방법

1
2
int x = 10;
int& ref_x = x; // ref_x는 x의 참조자이다

특징

  • 크기가 큰 데이터를 인수로 전달할 경우에 유용하다.
    • 참조자를 리턴하는 것은 주소값만 복사하면 되기 때문에 값을 리턴하는 것에 비해 효율적임.
  • 참조자의 배열은 존재할 수 없다.
    • 메모리 상에 공간을 차지할 수 없기 때문.
    1
    2
    
    int a, b;
    int& arr[2] = {a, b};
    
  • 배열의 레퍼런스는 존재할 수 있다.

    1
    2
    
    int arr[3] = {1, 2, 3};
    int(&ref)[3] = arr;
    

주의 사항

  • 참조자 정의 시에 반드시 누구의 참조자인지를 명시해야 한다.
  • 한 번 어떤 변수의 참조자가 되면, 이 더 이상 다른 변수를 참조할 수 없게 된다.
  • 댕글링 레퍼런스 (dangling reference)
    • 원래 참조하던 것이 사라진 레퍼런스
This post is licensed under CC BY 4.0 by the author.

Minishell ⑤ 회고

C++ 개념 정리 : 메모리 동적 할당