如何計算 C++ 中程式碼片段的執行時間?
我們可以使用以下語法來計算程式碼片段的執行時間 -
auto start = high_resolution_clock::now(); // Start time // Code snippet auto stop = high_resolution_clock::now(); // Stop time auto duration = duration_cast<microseconds>(stop - start); // Duration
類 high_resolution_clock 在“chrono”標頭檔案中定義。函式 now() 返回與呼叫時間點相對應的一個值。
一個頭檔案用於記錄特定程式碼所花費的時間。
#include <chrono> using namespace std::chrono;
以下是一個計算程式碼片段的執行時間的示例。
示例
#include <iostream>
#include <chrono>
using namespace std::chrono;
using namespace std;
int sum(int x, int y) {
int s = x + y;
cout << "The sum of numbers : " << s;
}
int main() {
auto start = high_resolution_clock::now();
sum(28, 8);
auto stop = high_resolution_clock::now();
auto duration = duration_cast<microseconds>(stop - start);
cout << "\nTime taken by function : "<< duration.count() << " microseconds";
return 0;
}輸出
The sum of numbers : 36 Time taken by function : 42 microseconds
在上面的程式中,定義了一個函式 sum() 來計算數字之和。
int sum(int x, int y) {
int s = x + y;
cout << "The sum of numbers : " << s;
}在 main() 函式中,我們使用一些預定義的函式和類“chrono”來記錄函式 sum() 所花費的時間。
auto start = high_resolution_clock::now(); sum(28, 8); auto stop = high_resolution_clock::now(); auto duration = duration_cast<microseconds>(stop - start);
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP