C++/따배C++ 08강 객체지향 기초

[C++/8.6] CLASS 소멸자, destructor

polarcompass 2021. 10. 21. 04:32
728x90
#include<iostream>
using namespace std;

class Simple
{
private:
    int m_id;
public:
    Simple(const int& id_in)
        : m_id(id_in)
    {
        cout << "Constructor " << m_id << endl;
    }

    ~Simple()
    {
        cout << "Destructor " << m_id << endl;
    }
};

int main(int argc, char const *argv[])
{
    Simple s1(0);
    // Simple *s1 = new Simple(0);
    Simple s2(2);

    // delete s1;

    return 0;
}
#include<iostream>
using namespace std;

// 메모리 동적할당 예제
class IntArray
{
private:
    int *m_arr = nullptr;
    int m_length = 0;

public:
    IntArray(const int length_in)
    {
        m_length = length_in;
        m_arr = new int[m_length];

        cout << "Constructor " << endl;
    }

    ~IntArray()
    {
        if(m_arr != nullptr)
            delete [] m_arr;
    }

    int size() { return m_length; }
};

int main(int argc, char const *argv[])
{
    while (true)
    {
        IntArray my_int_arr(10000);
    }
    
    return 0;
}
728x90