12.9
4-减少内存分配和复制
减少对内存管理器的调用是一种非常有效的优化手段,以至于开发人员只要掌握了这一个
技巧就可以变为成功的性能优化人员。绝大多数 C++ 语言特性的性能开销最多只是几个指
令,但是每次调用内存管理器的开销却是数千个指令。
由于字符串是许多 C++ 程序中非常重要(和性能开销大)的部分。
对缓存复制函数的一次调用也可能消耗数千个 CPU 周期。因此,很明显减少复制是一种
提高代码运行速度的优化方式。大量复制的发生都与内存分配有关,所以修改一处往往也
会消灭另一处。其他可能会发生复制的热点代码是构造函数和赋值运算符以及输入输出。