【发布时间】:2010-01-08 19:37:12
【问题描述】:
有人能指点我一篇文章,或者在这里写一些关于一些通常有效(没有真正缺点)并提高性能的 C++ 编程习惯的技巧吗?我不是指编程模式和算法复杂性——我需要一些小东西,比如你如何定义你的函数、在循环中要做/避免的事情、在堆栈上分配什么、在堆上什么等等。
这不是关于让特定软件更快,也不是关于如何创建干净的软件设计,而是关于编程习惯 - 如果你总是应用它们,你会让你的代码快一点而不是一点点慢一点。
【问题讨论】:
-
多年来我养成了一些优化的编程习惯(来自汇编语言和 8 位微控制器)。问题是,很多时候,一个简单的设计更改就会使 {micro} 优化无效。我最好的优化是减少不必要的方法和对象的编码。如有必要,总会有时间添加更多功能。
-
对于大多数语言,尤其是像 C++ 这样复杂的语言,如果你没有做一些非常不称职的事情(比如每次通过循环复制大量数据),几乎不可能确定有什么影响“设计时”优化有——包括这些小习惯。我的建议是 [Steve McConnell's] (stevemcconnell.com):编码时根本不值得担心优化。养成编写可读代码而不是优化代码的习惯。
-
但是如果您正在编写实时应用程序,线性时间也很重要,并且在应用程序的开发过程中,瓶颈可能会转移到另一个地方 - 如果您之前仔细编码,事情可能会运行得更快
-
这里真正的问题是什么?我能从文本中解读出的最好的内容是极其广泛且自相矛盾的(关于性能的一般建议,而不是算法复杂性,然后是一些只对性能影响“一点点”的一般编程习惯?)。
-
完全正确 :) 我只是在寻找肯定不会伤害的习惯,但可以让代码变得更好
标签: c++