相关知识
(1)explicit关键字的作用是禁止隐式转换,好处是可避免隐式转换带来的内存开辟,避免预料外的时间开支。
比如
A a();
B b = a;// 编译错误
B b(a); //正确
如a占用2G内存,B b = a;将会使程序占用4G内存。
(2)关于const的资料 http://blog.csdn.net/Eric_Jo/article/details/4138548
(3)std::ostringstream用法浅析http://blog.csdn.net/oodsong/article/details/8205976
ostringstream是C++的一个字符集操作模板类,定义在sstream.h头文件中。ostringstream类通常用于执行C风格的串流的输出操作,格式化字符串,避免申请大量的缓冲区,替代sprintf。有时候,我们需要格式化一个字符串,但通常并不知道需要多大的缓冲区。为了保险常常申请大量的缓冲区以防止缓冲区过小造成字符串无法全部存储。这时我们可以考虑使用ostringstream类,该类能够根据内容自动分配内存,并且其对内存的管理也是相当的到位。
效率上是不是会不如sprintf?