정리자: 이태혁 (Lee, Taehyuk)
C++을 통해서 Pointer나 Iterator, call by reference, call by value 등에 대해서 배워보자.
처음 보는 사람들은 이해하기 힘들수도 있다. 이에 대해 조금 풀어서 설명해보자.
결론: 메모리를 아끼기 위함이라 생각한다.
Pointer는 내가 할당해 놓은 변수의 주소를 가리키는 변수로서, 다른 내가 할당 해 놓은 변수를 사용하고 싶을때 메모리 전체 내용을 복사하기보다 그 변수의 위치를 알려줘서 값을 접근할수 있게 하기 위함이다.

char lang = 'c';
int year = 2022;
double pi = 3.14592;
메모리를 간단하게 직사각형 구조에 표현했다. 위와 같이 3개의 변수를 선언하면 그 크기에 따라 (한 칸에 1byte) 위와같이 메모리에 저장되게 된다. [char 1byte, int 4byte, double 8byte]
<aside> ☑️ Q. 위와 같은 Primitive variable type들을 함수로 넘길경우 메모리상에서는 어떤 일이 일어날까?
</aside>

void func1(int parameter){
//수행 로직 (매개변수 - 여기서 int parameter를 통해 새로 선언이 되는 것이기에 매개변수라 표현함)
}
int argument = 10;
func1(argument);
//argument를 func1의 인자로 넣을때