C++
malloc 함수와 new 연산자의 차이
상레알
2009. 1. 5. 17:33
new 와 delete 롤 객체의 동적 생성 및 소멸 을 할수가 있다
하지만
malloc 함수를 이용해서는 객체 생성을 할 수 가 없다. 왜냐 하면!
malloc 함수는 함수 호출시 전달되는 인자 만큼 단순히 메모리 공간을 할당만 하는 함수 이기 때문이다.
즉 객체의 크기 만큼 메모리 공간을 할당할 수는 있을지라도, 생성자 호출은 이뤄지지 않는다.
C++에서 이야기하는 객체의 조건에는
1. 메모리 할당
2. 생성자 호출 (*생성자의 외형적 특징 1.함수이다 2.클래스의 이름과 같은 이름을 지닌다3.리턴하지도 않고, 리턴 타입도
하지만
malloc 함수를 이용해서는 객체 생성을 할 수 가 없다. 왜냐 하면!
malloc 함수는 함수 호출시 전달되는 인자 만큼 단순히 메모리 공간을 할당만 하는 함수 이기 때문이다.
즉 객체의 크기 만큼 메모리 공간을 할당할 수는 있을지라도, 생성자 호출은 이뤄지지 않는다.
C++에서 이야기하는 객체의 조건에는
1. 메모리 할당
2. 생성자 호출 (*생성자의 외형적 특징 1.함수이다 2.클래스의 이름과 같은 이름을 지닌다3.리턴하지도 않고, 리턴 타입도
선언되지 않는다.)
객체의 조건을 만족시키려면 생성자의 호출이 반드시 거쳐야되나... 이루어지지않음....
객체의 조건을 만족시키려면 생성자의 호출이 반드시 거쳐야되나... 이루어지지않음....