new 동적 할당 방법
typeName * pointer_name = new typeName;
typeName = 자료형
delete
예시 1)
int * ps = new int;
delete ps;
예시 2)
int *ps = new int;
int *pq = ps;
delete pq;
delete도 포인터와 같이
ps나 pd가 가진 주소의 값(변수값)을 타고 들어가 지운다.
ps = &new
ps = pq = &new
nullptr의 예시
ps = nullptr
pq = nullptr
이유는 포인터가 가지고 있던 주소 값은 바뀌지 않기 때문에
가리키던 주소를 초기화 해주는 것이다.
생성자와 new 그리고 delete
생성자에서 new를 사용하여 메모리를 대입했을 때에는,
대응하는 파괴자에서 delete를 사용하여 그 메모리를 해제해야 한다.
생성자에서 new [] 형식을 사용했다면,
파괴자에서도 delete [] 형식을 사용해야 한다.
'프로그래밍 언어 > C & C++ 정리' 카테고리의 다른 글
임시 변수, 참조 매개변수, const (0) | 2023.01.21 |
---|---|
가변배열 동적할당 vector (0) | 2023.01.18 |
c++ 함수 구문 (0) | 2023.01.13 |
main 함수의 머리 (0) | 2023.01.11 |
인라인 함수 (0) | 2023.01.09 |