rapidxml

rapidxml快速有以下原因:

1)使用memory pool分配及释放内存。rapidxml默认每次申请64K的空间,如果当前pool中的空间不足,则会以64K空间的大小逐步增加。试想,连续申请16000次每次申请4个字节,和申请一次64K,之间谁的时间短?当然是一次时间短。

2)避免多余的字符串拷贝。无疑,字符串拷贝是非常耗时的,rapidxml为了追求rapid的特点,在内部拷贝时都只使用浅拷贝(与深拷贝相对:只是拷贝指针的值,而不是拷贝指针指向的内容)。不过也由此,使用者在保存xml文件时,需要注意一点:当将rapid写入到内存之前,应保证浅拷贝时指针指向的内容没有发生改变。否则,你会发现保存的文件内容都是错误的值。

rapidxml.hpp:

         只要文件 实现内存池 解析string 异常处理

xml_base 基数节点类

xml_attribute 文本类

xml_node 节点类

xml_document 文档类

rapidxml_iterators.hpp:

         提供两个迭代器类:node_iterator, attribute_iterator

rapidxml_print.hpp:

         提供跟字符串,流对象的装换函数

rapidxml_utils.hpp:

         提供一个file用来读取文件使用

         跟两个计数函数 count_children,count_attributes


转载于:https://www.cnblogs.com/wbinblog/archive/2012/03/04/2379213.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值