Visual C++跑表
我想知道测量 C++ 中某些代码的执行时间的最佳方法是什么。是否有内置的秒表(.Net)类似类?我正在VS2010上开发C++。我如何(如果)在我的 C++ 项目中使用 .Net 库?先感谢您。
I wonder what is the best way to measure the execution time of some code in C++. Is there any built in Stopwatch (.Net) alike class? I am developing C++ on VS2010. How (if) can i use the .Net libraries inside my C++ project?? Thank you In advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
AFAIK C++ 还没有像 .NET 中的 Stopwatch 这样的标准类。
http://cplus.about.com/od/howtodothingsi2/a/timing.htm 是windows平台上高分辨率定时器的示例。
此类计时器的独立于平台的实现是: http://www.boost.org/ libs/timer/doc/index.html
HTH
AFAIK C++ hasn't got an standard class like the Stopwatch in .NET.
http://cplus.about.com/od/howtodothingsi2/a/timing.htm is an example for a high resolution timer on the windows platform.
A platform independent implementation for such timers is: http://www.boost.org/libs/timer/doc/index.html
HTH
您可以考虑http://code.google.com/p/cpp-stopwatch,它采用纯 C++ 编写,没有依赖项,并附带方便的 Visual Studio 解决方案。哦,我写的。
You might consider http://code.google.com/p/cpp-stopwatch, it's in plain C++, no dependencies and comes with a handy Visual Studio solution. Oh, and I wrote it.
您可以使用 QueryPerformanceCounter 在“分析”某些代码时获得更好的时机(它并不完美,但应该足以让您入门)。
http://msdn.microsoft。 com/en-us/library/windows/desktop/ms644904(v=vs.85).aspx。
You can use QueryPerformanceCounter to get a better timing when "profiling" some code (it's not perfect, but should be enough to get you starter).
http://msdn.microsoft.com/en-us/library/windows/desktop/ms644904(v=vs.85).aspx.
就其价值而言,这里是一个 Windows 实现(与 .NET 非常相似):
For what it's worth, here is a Windows implementation (quite similar to .NET):