gpt4 book ai didi

c++ - 我可以在 C++ 中获得毫秒级的时间而不会感到痛苦吗?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:16:01 25 4
gpt4 key购买 nike

所以我找到了this answer .它构造时间的方式看起来很奇怪(想象一下没有 auto ),但它 also doesn't work in Visual Studio 2010 ,因为那个 MSVC 版本太旧了。我无法选择我使用的 Visual Studio,所以我需要坚持使用它。 Visual Studio 错误:

fatal error C1083: Cannot open include file: 'chrono': No such file or directory

所以我查看了其他答案,其中大部分都宣称很奇怪 struct使用 totally::freaky<time> factories因为他们试图获得高精度时间。我对时间 ± 5 毫秒非常满意 - 我正在测量 100 - 5000 毫秒的时间。

那么如何使用旧 C++ std 库获得近似系统/cpu 毫秒时间? (MSVC2010)

PS.: 在我们项目的一些记录器文件中,我发现了这个:

datetimeEx(){
time_t timer;
time( &timer );
tm *t = localtime( &timer );
char tmp[32];
sprintf(tmp, "%02d%02d%02d %02d%02d%02d", t->tm_year - 100, t->tm_mon + 1, t->tm_mday, t->tm_hour, t->tm_min, t->tm_sec);
log << tmp;
return log;
}

它产生这样的时间:2015-11-02 16:53:57:<b>389</b>我玩过它,但我看不出两次有什么不同。

最佳答案

我可能会使用 Boost Chrono .它构成了 <chrono> 的基础现在在标准库中,并且工作方式非常相似。当您可以升级编译器时,转换为使用标准库设施应该相对容易(事实上,在许多情况下,它可以像将 using namespace boost::chrono; 更改为 using namespace std::chrono; 一样简单)。

无论如何,请注意您决定使用哪个时钟,这可以满足您的要求,并且仍然使代码具有合理的可移植性——当然适用于 Windows、Linux 和 Mac OS 等主要系统,我希望(尽管我还没有亲自测试过)大多数其他 Unixesque 系统。

关于c++ - 我可以在 C++ 中获得毫秒级的时间而不会感到痛苦吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33481867/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com