65,187
社区成员




struct NOde
{
Char *test;
Char *test1
public:
void Init()
{
test=null;
}
};
int main()
{
char*p;
list<Node> MYList;
for(int i=0;i<10;i++)
{
p=new char[3];
MYlist.at(i).test=p;
}
//TODO在这里释放内存
}
struct Node
{
char *test;
char *test1;
public:
void Init()
{
test=NULL;
}
~Node(void)
{
if (test)
{
delete [] test;
test = 0;
}
}
};
这个是我要用到的节点。
struct LaneListNode
{
QLabel *SafeStatus;
QLabel *LogInfo;
QLabel *CurrentCar;
QLabel *CarInfo;
QLabel *CarQuenue;
QLabel *DevStatus;
public:
void Init()
{
SafeStatus=NULL;
LogInfo=NULL;
CurrentCar=NULL;
CarQuenue=NULL;
DevStatus=NULL;
CurrentCar=NULL;
}
};
/*-----------------程序启动时会调用一个函数,函数的其中一部分是-------------------*/
for(int i=0;i<LaneNumber;i++)
{
Node.Init();
Node.CarInfo=new QLabel("");
Node.CarQuenue=new QLabel("");
Node.CurrentCar=new QLabel("");
Node.DevStatus=new QLabel("");
Node.LogInfo=new QLabel("");
Node.SafeStatus=new QLabel("");
LaneList.push_back(Node);
}
/*--------------------------------程序运行完成后我会执行这个析构函数------------*/
MainInterface::~MainInterface()
{
for(int i=0;i<LaneNumber;i++)
{
delete LaneList.at(i).CarInfo;
delete LaneList.at(i).CarQuenue;
delete LaneList.at(i).CurrentCar;
delete LaneList.at(i).DevStatus;
delete LaneList.at(i).LogInfo;
delete LaneList.at(i).SafeStatus;
}
delete ui;
}
/*-----------------为了方便我在类的头文件中定义了如下几个变量--------------------*/
QList<LaneListNode> LaneList;
LaneListNode Node;
int LaneNumber;