有人可以推荐一个适用于C++的良好代码分析工具吗?
我发现了Shiny - 不错吗? http://sourceforge.net/projects/shinyprofiler/
有人可以推荐一个适用于C++的良好代码分析工具吗?
我发现了Shiny - 不错吗? http://sourceforge.net/projects/shinyprofiler/
对于Unix/Linux系统,请使用Callgrind
对于Windows系统,请使用DevPartner
如果您运行的是VS 2010的高级版本,则会附带一个分析器。
我也使用过其他几个免费工具,但它们与MS提供的不可比较。不过作为第二意见还是很有用的。
Quantify(IBM/Rational PurifyPlus软件包的一部分)是一个非常好的性能分析器,但价格并不便宜。它可以在多个平台上使用 - 我曾在Solaris、Windows和Linux上使用过它。
根据您需要做什么:
这些不一样。
对于1,请使用推荐的分析工具之一。
对于2,我更喜欢的分析工具是您已经拥有的:
http://www.wikihow.com/Optimize-Your-Program%27s-Performance
要了解如何使用,请查看此链接。
对于C++、C#和任何鼓励抽象层次的语言,这些层次可能有利于软件工程,但它们可能会破坏性能。每个方法调用都是程序执行中的一次绕路,而这种风格鼓励您嵌套这些东西,有时是不必要的。此外,这种风格也不鼓励您了解或关注它们内部发生的事情。您可能会发现它们在应用程序实际不需要的速率和泛化级别下创建和删除对象。
如果您找不到DevPartner,那是因为我们已经转移到新的所有权下。请在Micro Focus网站上查看我们:http://www.microfocus.com/products/micro-focus-developer/devpartner/index.aspx。无耻地宣传一下:我在DevPartner团队工作。我们期待已久的BoundsChecker和C++/.NET分析器的64位版本将于2011年2月4日发布。我们已经改变了定价模式,因此您可以选择整个套件或仅选择性能分析器(如果这正是您所需的)。请在DPS 10.5发布时查看新版本!