안녕 세상아,

[c++] 참조자( & ) 본문

c++ 개념

[c++] 참조자( & )

돈 많은 백수가 되고싶다 2024. 12. 30. 15:13

참조자란? 

- 변수의 메모리 주소 직접 참조

- 호출한 쪽의 원래 변수에 직접 접근하고 수정 가능

- 함수 내부에서 값 바뀌면 원래 변수도 변경사항 반영

#include <string>
#include <vector>
#include <iostream>
using namespace std;

void change(int answer) {
    answer+=10;
    return;
}

int main() {
    int answer = 0;
    change(answer);

    cout << answer;
}
출력값
0

참조자를 사용하지 않을 때는 함수에서 값을 아무리 바꿔도 원래 변수의 값으로 출력된다. 

 

하지만,

#include <string>
#include <vector>
#include <iostream>
using namespace std;

void change(int& answer) {
    answer+=10;
    return;
}

int main() {
    int answer = 0;
    change(answer);

    cout << answer;
}
출력값
10

참조자를 사용하면 함수의 값이 원래 변수에도 적용돼서 출력값이 10이 나온다.