요약


반드시 malloc/free, new/delete, new[]/delete[] 짝을 맞춰서 할당하고 해제해야 한다.

<aside> ❓ 짝을 맞추지 않는 경우 어떤 문제가 발생하는가?

객체 소멸 시점

할당/해제

void main()
{
	int* p1 = (int*)malloc(sizeof(int));
	*p1 = 1;

	int* pArr1 = (int*)malloc(sizeof(int)*2);
	pArr1[0] = 0;
	pArr1[1] = 1;

  free(p1);
	free(pArr1);
}
void main()
{
	int* p2 = new int;
	*p2 = 2;

	int* pArr2 = new int[2];
	pArr2[0] = 2;
	pArr2[0] = 3;

	delete p2;
	delete [] pArr2;
}

설명


malloc & free

void * malloc(size_t size);
void free(void* memblock);