月归档:2013 年十二月

单件模式,如何灵活应付单例的生命周期。
HOT

开始复习设计模式,第一个,单件模式。我想我要写的东西太长了,于是我打算说我解决了什么问题,基础足够的同学请自行补脑。单件模式为解决复杂系统只需要一个实例的问题。但是没有提在C++里面怎么解决内存自动释放的问题。我相信大多数人首先想到的C++实现都单纯的类似这样:class Singleton { public: ~Singleton(){} sta...
阅读全文

c语言解析xml
HOT

根据导师的要求,要用c语言解析一个xml文件,用于对升级文件进行合法性判断,进而对软件进行升级。上网搜了一些关于这方面的资料,发现有一些是用C++或java等语言写的,当然也可以直接下载开源的代码,也可以下载库文件直接使用。但考虑到对xml文件解析其实用不到那么多功能,也考虑到硬件方面无法支持这么大的库文件。因此,决定自己写一段代码用于解析简单的xml文件。看了一些源代码,发现他们主要使用树型结构...
阅读全文

在预先定义的内存位置构造一个对象
HOT

常常有人问这样一个C++问题:如何在预先定义的内存位置构造一个对象?在预先定义的内存缓冲构造一个对象有许多有用的应用。例如,一个定制的垃圾搜集器能使用一个大的预分配内存缓冲,用户在这个缓冲中构造其对象。当不再需要这些对象时,它们的存储空间被自动收回。这个技术在重视时间的应用中也很有用。在预先分配的内存缓冲构造一个对象是一种“时间常量”操作,之所以这样说是因为程序分配操作本身...
阅读全文