Tinyxml的内存析构
来源:互联网 发布:网络用语你有毒的意思 编辑:程序博客网 时间:2024/06/05 08:53
Tinyxml的值在使用时最好是new出来的,因为其在析构的时候会遍历整个树,将树中的节点析构掉。但是没有在树中的节点将不会被自动施放,正是这种半自动的释放带来了问题。
ReplaceChild()方法中,我们插入的值是否需要释放呢,通过查看内部的代码,它是clone一个然后加入树的,也就是说,原来的值如果是new出来就需要释放。
void set_node(TiXmlElement* element,const char* value)
{
TiXmlText* tmp1 = new TiXmlText(value);
TiXmlNode* node = element->FirstChild();
if(node == NULL)
{
element->LinkEndChild(tmp1);
}
else
{
element->ReplaceChild(node,*tmp1);
delete tmp1;
}
}
ReplaceChild()方法中,我们插入的值是否需要释放呢,通过查看内部的代码,它是clone一个然后加入树的,也就是说,原来的值如果是new出来就需要释放。
void set_node(TiXmlElement* element,const char* value)
{
TiXmlText* tmp1 = new TiXmlText(value);
TiXmlNode* node = element->FirstChild();
if(node == NULL)
{
element->LinkEndChild(tmp1);
}
else
{
element->ReplaceChild(node,*tmp1);
delete tmp1;
}
}
- Tinyxml的内存析构
- Symbian下tinyXML的内存泄露问题
- TinyXML不支持UNICODE的解决方法【改造TinyXML】
- tinyxml库的使用
- tinyxml库的使用
- 转载:tinyxml 的使用
- 使用TinyXML的注意事项
- tinyxml的使用例子
- tinyxml的使用
- tinyxml的xml读取
- tinyxml非常好的实例
- tinyxml的使用 转
- tinyxml的使用
- TinyXML的使用
- tinyxml库的使用
- TinyXML 的使用
- TinyXML的简单应用
- TinyXml的基本用法
- Delphi ADOQuery多个参数重复 改编技巧(原创)
- RichEdit2.0的设置字体中Dual-font特性怎么处理
- VC lib链接错误的总结
- 命令行交互网站
- C++开源跨平台类库集
- Tinyxml的内存析构
- zoj 2500
- 全局钩子中使用postmessage
- 写给初学者的一些内容(Delphi7.0 预编译指令说明)
- 验证函数:三元运算符
- 实现google的下拉选择
- 用Javascript实现添加删除表格行
- IFS中PO行里的四个日期
- 中国IT人十大职业现状