关于vc中使用CList模板的问题

BeginnerCpp 2004-02-04 04:24:53
俺在一个程序中使用了一个链表类来保存一些数据,
这些数据是使用new来生成的,
然后放倒链表中去,
到了要从链表中去清除节点时候,
因为俺的数据是new出来的,
所以俺为了放心,
在调用CList::RemoveAll()前,
把节点都调出来了,
删除它,
然后再调用CList::RemoveAll()来把链表清空。
然而再调试状态下运行程序,
会再输出窗口出项内存泄漏的提示,
代码如下:

typedef CList< CSendItem, CSendItem&> CMyList;

//扩展list类
class CSendItemList : public CMyList
{
public:
CSendItemList(void);
~CSendItemList(void);
};

//程序中出问题的地方,
//只在这里new了数据,输出窗口提示这里出错误
bool CDebugComDoc::UpdataSendItemList( void )
{
..........................
CSendItem* pitem;
CSendItem item;

//clear the old send item list
for( int i = 0; i < this->m_listSendItem->GetCount(); i++ )
{
item = this->m_listSendItem->GetAt((POSITION)i);
pitem = &item;
delete pitem;
}
this->m_listSendItem->RemoveAll();

//use loop to get the all item text and save it in list
for(int i = 0; i < listwnd->m_cAdvListCtrl.GetItemCount(); i++ )
{
pitem = new CSendItem;
..............................
this->m_listSendItem->AddTail(*pitem);

}
return false;
}

然后,再这个类的构造和解构函数中:
CDebugComDoc::CDebugComDoc()
{
this->m_listSendItem = new CSendItemList;
}

CDebugComDoc::~CDebugComDoc()
{
//clear the old send item list
CSendItem* pitem;
CSendItem item;
for( int i = 0; i < this->m_listSendItem->GetCount(); i++ )
{
item = this->m_listSendItem->GetAt((POSITION)i);
pitem = &item;
delete pitem;
}
this->m_listSendItem->RemoveAll();

delete this->m_listSendItem;
}



...全文
132 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
内容概要:本文研究了一种针对四机并联孤岛微电网的协同控制策略,通过集成DoS攻击模拟、分布式二次控制、下垂控制与事件触发式负荷控制,旨在实现微电网在遭受网络安全威胁等异常工况下的电压与频率恢复以及有功/无功功率的精确共享分配。基于Simulink平台构建了完整的微电网仿真系统,包含多台分布式发电单元(DG),采用下垂控制实现无需通信的功率自主分配,并引入分布式二次控制以补偿由下垂特性引起的电压和频率偏差,从而提升电能质量。为进一步降低通信负担并提高系统效率,设计了事件触发机制,仅在必要时刻进行信息交互。研究重点在于多时间尺度下的协同控制架构设计,全面验证了该策略在正常运行与遭受DoS攻击等扰动情形下的稳定性、鲁棒性与恢复能力。; 适合人群:具备电力系统、自动控制理论基础,熟悉Simulink/Matlab仿真工具,从事微电网、分布式能源、智能电网及相关领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①研究孤岛微电网电压频率恢复与功率均分的多时间尺度协同控制机制;②分析DoS网络攻击对微电网控制性能的影响及其应对策略;③掌握事件触发控制在减少通信开销的实际应用方法;④复现并拓展具备网络安全防护能力的高级微电网控制算法仿真模型。; 阅读建议:此资源以Simulink仿真实现为核心,建议读者结合现代控制理论与网络安全知识,逐步搭建系统模型,重点关注控制器参数整定、事件触发阈值设计及DoS攻击注入方式,通过对比实验深入理解控制策略的有效性与鲁棒性。

16,550

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧