반응형
//************************************************
//  malloc :  메모리 관리 
//************************************************
// C++언어에서는 동적메모리를 적극적으로 사용한다 
// new : java, C# 
// --> malloc --> new !! 
// delete --> free 

#include 
using namespace std;

struct Person 
{
	int age;
	char name[20];
};
void main()
{	
//  동적배열 
//	int * p =  new int[10]; 
//--> int * p =  (int*)malloc(sizeof(int)*10); 

	Person * list =  new Person[10]; 
	
	list[0].age = 10;
	strcpy( list[0].name , "홍길동") ;

	delete [] p; 
	//free(p); 
	
	// malloc VS new 
	// 1. malloc은함수이기 때문에 별도에 인클루드가 필요하다 .
	// 2. new 연산자 이기때문에 인클루드 없이 프로그램 어디서든 사용가능 
	// 3. mallc은 void * 를 리턴하기때문에 별도에 캐스팅이 필요하다 !!
	// 4. new는 알아서  생성에 맞는 타입의 포인터를 리턴해준다 !!
	// 5. new와 delete는 객체의 생성자와 소멸자를 자동으로 호출하는 역할 !! 
	// 6. class의 객체 생성시에는 반드시 new/delete를 사용해야 한다 !! 





}




'C, C++' 카테고리의 다른 글

[C++] 함수오버로딩  (0) 2014.11.18
[C++] 문법적 개선사항  (0) 2014.11.18
[C++] C++ 의 구조와 C언어 개선사항  (0) 2014.11.18
[C] 셀렉트를 사용한 통신  (0) 2014.11.18
[C] 소켓 공부  (0) 2014.11.18

+ Recent posts