freeseaboy 님의 멋있어 지려 노력하는 블로그

(베이직 코스)C++ 소멸자 에 대해 알아보자 본문

컴퓨터 & 서버/C++

(베이직 코스)C++ 소멸자 에 대해 알아보자

freeseaboy 2024. 10. 26. 14:21
반응형

자...이번 리뷰는 C플플에서

 

생성자를 이용해 객체를 만들고 다시 객체를 

다 사용후 삭제 할떄 나오는 소멸자에 리뷰를 해본다

 

일단 C++은 객체지향 언어답게

소멸자라는게 있다.

소멸자는 앞전 리뷰에서 말했다 싶이

객체 생성시 미리 필요한 리소스를

사전 준비 하는 선발대 개념과 같다...

 

그렇다면...

소멸자는????

소멸자는 후발대 같은 개념으로 보면 된다

생성자가 미리 준비를 다해놓고 큰 파티가 열리고

이제 집갈 시간이 되었다 하자 그럼

 

초대받은 손님들은 그냥 가면 되지만

그업장에 일하는 사람들은 뒷정리를 해야된다.

이럴떄 비로서 소멸자의 역할이 명확히 나온다고 보면된다.

뭐 .. 나중에 고급기술은 스마트 포인터나 이동생성등등 배우게 되면

아주 아주 고마운녀석이란걸 알게 될것이다..

 

자 그럼 코드를 조져 보고 결과를 확인해보자.

 

#include <iostream>
using namespace std;

class polyA{
    public:
    polyA(){
        cout << "polyA" << endl;
    }
    ~polyA();
};
polyA::~polyA(){
    cout << "BrokenA" << endl;
}
class polyB{
    public:
    polyB();
    ~polyB(){
        cout << "BrokenB" << endl;
    }
};
polyB::polyB(){
    cout << "polyB" << endl;
}
class polyC : public polyA,public polyB{
    public:
    polyC(){
        cout << "polyC" << endl;
    }
};
int main(void){
    polyC showMe;
    
}

결과

소멸자 는 생성자의 역순으로 시작한다고 보면 된다 !!!

예외는 있을수 있으나 지금 리뷰에는 예외는 예외 처리하겠다

반응형