본문 바로가기

C++33

This 포인터 멤버 함수 내에서는 this라는 이름의 포인터를 사용할 수 있다. 뭐..열강 예제를 보면 알수 잇겟지만 포인터의 값과 포인터가 가르키는 객체가 리턴한 this의 출력 결과도 같음을 알수 잇다. 즉..this는 자기 자신을 가르키는 (참조하는 ) 용도로 사용되는 포인터이다 그래서 자기 참조 포인터 라 한다. 리턴 타입은...ex) person* a = a; this->b = b; } void print1(){ cout 2009. 1. 6.
열혈강의 연습문제 4-2 /생성자/소멸자/객체 포인터 동적 할당/해체/문자입력받아서 순서대로 출력 #include using std::cout; using std::cin; using std::endl; class NameCard{ private: char *name; char *number; char *address; char *grade; public: NameCard(){} NameCard(char *_name,char *_number,char *_address,char *_grade) { if(_name==NULL||_number==NULL||_address==NULL||_grade==NULL) { cout 2009. 1. 6.
malloc 함수와 new 연산자의 차이 new 와 delete 롤 객체의 동적 생성 및 소멸 을 할수가 있다 하지만 malloc 함수를 이용해서는 객체 생성을 할 수 가 없다. 왜냐 하면! malloc 함수는 함수 호출시 전달되는 인자 만큼 단순히 메모리 공간을 할당만 하는 함수 이기 때문이다. 즉 객체의 크기 만큼 메모리 공간을 할당할 수는 있을지라도, 생성자 호출은 이뤄지지 않는다. C++에서 이야기하는 객체의 조건에는 1. 메모리 할당 2. 생성자 호출 (*생성자의 외형적 특징 1.함수이다 2.클래스의 이름과 같은 이름을 지닌다3.리턴하지도 않고, 리턴 타입도 선언되지 않는다.) 객체의 조건을 만족시키려면 생성자의 호출이 반드시 거쳐야되나... 이루어지지않음.... 2009. 1. 5.
소멸자의 특징과 필요성 C++의 객체 소멸 과정 첫째 소멸자 호출 둘째 메모리 반환(해체) 소멸자에 대한 외형적 특징 첫째.함수이다. 둘째. 클래스의 이름 아ㅠ에 ~가 붙은 형태의 이름을 지닌다. 셋째. 리턴하지도않고, 리턴 타입도 선언되지 않는다. 넷쟤. 매개변수를 받을 수 없다. 따라서 오버로딩도 불가능하고, 디폴트 매개 변수 선언도 불가능 하다. 소멸자의 특징은 -객체 소멸시 반드시 한번 호출 생성자는 멤버 변수의 초기화를 위해서 생성자를 항상 정의하기 마련이다. 그러나 소멸자는 다르게 객체 소멸 시 처리해야 할 일이 있을때만 프로그래머가 정의한다. 즉, 생성자 내에서 메모리를 동적 할당하는 경우, 이를 해체하기 위해서 반드시 소멸자를 정의해야 된다. 2008. 12. 30.