Nagie's DevStory

[CPP] 22. 소멸자 (Destructor) 본문

Programming/C++

[CPP] 22. 소멸자 (Destructor)

Nagie 2023. 10. 21. 21:58
728x90

소멸자는 객체가 소멸하는 시점에 호출되는 특별한 멤버 함수라고 말했다.

생성자와는 다르게 오버 로딩이 불가능하며 파라미터도 가지지 못한다.

소멸자는 클래스의 이름 앞에 '~'가 붙은 형태의 이름을 가지며 사용 예시는 다음과 같다.

 

class User {
private:

	int* nUserNum;
	std::string strUserName;

public :


	User(int num = 0, std::string name = "Unknown") {

		this->nUserNum = new int(0);
		this->strUserName = name;
	}

	~User() { //소멸자

		if (this->nUserNum != nullptr) {

			delete this->nUserNum;
			this->nUserNum = nullptr;
		}
	}

};

 

728x90
Comments