Heap에 메모리를 동적으로 할당할 때 사용한다.
int* p = new int; // 정수형 공간을 동적으로 할당
int* q = new int(5); // 5로 초기화하면서 할당
객체 또는 기본형 타입을 동적으로 생성한다.
메모리가 성공적으로 할당되면 포인터를 반환한다.
new로 할당한 메모리를 해제할 때 사용한다.
delete를 호출하지 않으면 메모리 누수(memory leak)가 발생할 수 있다.
delete p; // new int 또는 new Type()으로 만든 객체 해제