gpt4 book ai didi

c++ - 如何在 C++ 中计时事件?

转载 作者:太空狗 更新时间:2023-10-29 23:53:16 26 4
gpt4 key购买 nike

我希望能够获得在我的 C++ 程序中执行某些操作所需的纳秒数。

对象创建,函数执行它的时间等。

Java 中,我们会按照以下方式做一些事情:

    long now = System.currentTimeMillis();
// stuff
long diff = (System.currentTimeMillis() - now);

你会如何在 C++ 中做同样的事情?

最佳答案

<chrono>标准 C++ 中的库提供了执行此操作的最佳方法。该库为时钟提供了一个标准的、类型安全的通用 API。

#include <chrono>
#include <iostream>

int main() {
using std::chrono::duration_cast;
using std::chrono::nanoseconds;
typedef std::chrono::high_resolution_clock clock;

auto start = clock::now();
// stuff
auto end = clock::now();
std::cout << duration_cast<nanoseconds>(end-start).count() << "ns\n";
}

时钟的实际分辨率会因实现而异,但此代码将始终以纳秒为单位显示结果,并在给定实现的滴答周期的情况下尽可能准确。

关于c++ - 如何在 C++ 中计时事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11850717/

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