我正在SystemC中编写一个模块,在构造函数中我有一个用new
初始化的变量:
SC_CTOR(MY_MODULE)
{
...
...
my_matrix = new unsigned char [a*b];
...
...
}
如何在模拟结束时声明析构函数释放内存?
答案 0 :(得分:4)
您需要使用C ++语义。析构函数没有等效的SC_CTOR
。
SC_MODULE(MyModule)
{
SC_CTOR(MyModule)
{
my_matrix = new unsigned char [10];
}
~MyModule() {
delete my_matrix;
}
private:
unsigned char * my_matrix;
};