Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

จะคำนวณเวลาดำเนินการของข้อมูลโค้ดใน 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() เราบันทึกเวลาที่ใช้โดยฟังก์ชัน sum() โดยใช้ฟังก์ชันที่กำหนดไว้ล่วงหน้าและคลาส “chrono”

auto start = high_resolution_clock::now();
sum(28, 8);
auto stop = high_resolution_clock::now();
auto duration = duration_cast<microseconds>(stop - start);