KoreanFoodie's Study

C++ 기초 개념 3 : new와 delete 본문

Tutorials/C++ : Beginner

C++ 기초 개념 3 : new와 delete

GoldGiver 2021. 12. 20. 13:48


new와 delete

c에 malloc과 calloc이 있다면, C++에는 new와 delete가 있다.

int* p = new int;
*p = 10;

delete p;

만약 지역변수를 delete로 해제하려 한다면 Heap이 아닌 공간을 해제하려 한다는 경고 메시지가 나타난다.

 

컴파일러는 변수를 가까운 곳에서 찾는다.

int a = 4;
{
  std::cout << "외부의 변수 1" << a << std::endl;
  int a = 3;
  std::cout << "내부의 변수 " << a << std::endl;
}

std::cout << "외부의 변수 2" << a << std::endl;

 

 

 
Comments