性能优化系列文章导航:《新的职业目标,以及C++性能优化》
针对字符串(std::string)的性能优化checklist
(1)使用reserve()预分配存储空间。(2)使用 a+=b; 代替 a=a+b。
(3)将c-string与std::string之间的转换推迟到它真正被使用的时候。
这一点的意思是,避免类型之间的转换而引起的内存拷贝和构造函数调用。同时也是为了格式统一。
(4)在软件系统或模块内部,使用一致的字符串格式,以减少或消除字符串转换。
(5)用引用传入或传出参数。