본문 바로가기

Programming/C++

new & delete

c언어에서는 동적할당시에 malloc 과 free를 사용했었습니다.


c++에서는 malloc과 free를 new와 delete로 대신합니다.





c에서 malloc 과 free를 다음과 같이 사용합니다.





using namespace std;가 있다는건 함정;;;;;;;







일단 c에서는 







malloc의 반환형이 void형이기 때문에 (char*)를 사용해서 형변환을 시켜주고, 얼만큼 사용할지를 정해야 하므로 sizeof(char) X 개수를 해줘야 합니다.








하지만 new 와 delete는 조금 다릅니다.






new는 그냥 어떤 변수형태로 사용할 지만 사용하면 그냥 끝입니다. 배열도 마찬가지구요.


그런데 delete할때는 유의해야 할 사항이 있습니다.


delete [] arr;


배열을 delete할때는 위의 코드를 작성해야 합니다. 




'Programming > C++' 카테고리의 다른 글

파일분할  (0) 2015.06.01
클래스와 객체  (0) 2015.06.01
참조자와 함수  (0) 2015.04.06
참조자 Reference  (0) 2015.03.20
자료형 bool  (0) 2015.03.19