정리자: 이태혁 (Lee, Taehyuk)

C++을 통해서 Pointer나 Iterator, call by reference, call by value 등에 대해서 배워보자.

Pointer

처음 보는 사람들은 이해하기 힘들수도 있다. 이에 대해 조금 풀어서 설명해보자.

메모리그림.jpg

char lang = 'c';
int year = 2022;
double pi = 3.14592;

메모리를 간단하게 직사각형 구조에 표현했다. 위와 같이 3개의 변수를 선언하면 그 크기에 따라 (한 칸에 1byte) 위와같이 메모리에 저장되게 된다. [char 1byte, int 4byte, double 8byte]

<aside> ☑️ Q. 위와 같은 Primitive variable type들을 함수로 넘길경우 메모리상에서는 어떤 일이 일어날까?

</aside>

그림2.jpg

void func1(int parameter){
 //수행 로직 (매개변수 - 여기서 int parameter를 통해 새로 선언이 되는 것이기에 매개변수라 표현함)
}

int argument = 10;

func1(argument);
//argument를 func1의 인자로 넣을때