Как я могу объявить деструктор в SystemC?

Я пишу модуль в SystemC, где в конструкторе у меня есть переменная, инициализированная с помощью new:

SC_CTOR(MY_MODULE)
{
    ...
    ...
    my_matrix = new unsigned char [a*b];
    ...
    ...
}

Как я могу объявить деструктор для освобождения памяти по окончании моделирования?


person Marco    schedule 24.06.2016    source источник


Ответы (1)


Вам нужно использовать семантику C ++. Для деструктора нет эквивалента SC_CTOR.

SC_MODULE(MyModule)
{
    SC_CTOR(MyModule)
    {
        my_matrix = new unsigned char [10];
    }

    ~MyModule() {
        delete my_matrix;
    }

private:
    unsigned char * my_matrix;
};
person Guillaume    schedule 24.06.2016