정적할당 : main함수가 실행 되기 전에 저장공간이 생성되고 생성자가 호출된다.
동적할당 : 말 그대로 동적으로 메모리를 할당 -> new를 이용해 실행하여 메모리를 확보하고 생성자가 자동실행 된다. (힙영역에 존재, 포인터를 받아서 객체 포인터 변수에 주소값을 저장하고 처리), 사용 후 delete로 할당된 메모리를 삭제한다. (런타임 동안 배열 길이 선택가능)
형태 -> int *arry = new int[length]; (int *arry =new int[length](); 이렇게 하면 0으로 초기화 된다)
delete[] arry;
int *arry = new int;
delete arry;
ex) int *arry = new int[5]{1,2,3,4,5};
char *aary = new char[14]{"Hello, world!"};
int *pInt = new int(1); // 1으로 초기화된 int 타입 할당
char *pChar = new char('a'); // 'a'로 초기화된 char 타입 할당
'Coding > 궁금한 것들' 카테고리의 다른 글
For문 (0) | 2019.08.25 |
---|---|
Top-down, Bottom-up (0) | 2019.08.20 |
Xcode 디버깅 방법 (0) | 2019.08.10 |
Continue & Break (0) | 2019.08.10 |
포인터에 대해서 (0) | 2019.08.08 |