개요[편집 / 원본 편집]

C++ 11부터 추가된 시간 라이브러리. 고정밀의 시간 측정이 가능하다.

[편집 / 원본 편집]

[1] 범위를 선택할 수 있다. 나노초(ns), 밀리초(ms), 초(s), 분(m), 시간(h) 단위를 선택할 수 있다.

계산 원리는 코드 작동 종료 시점의 시간에서 시작 시점의 시간을 빼 소요 시간을 계산하는 것이다.

사용법[편집 / 원본 편집]

#include <iostream>
#include <chrono>
using namespace std;
using namespace chrono;

int maint(){
  system_clock::time_point StartTime = system_clock::now();//시작 시간 계산 시작

  cout << "Hello world!";

  system_clock::time_point EndTime = system_clock::now();//종료 시간 계산 시작
  duration<double> DefaultSec = EndTime - StartTime;
  nanoseconds nano = duration_cast<nanoseconds>(EndTime - StartTime); //나노초 계산
  milliseconds mill = duration_cast<milliseconds>(EndTime - StartTime); //밀리초 계산
  seconds sec = duration_cast<seconds>(EndTime - StartTime); //초 계산

  cout << nano << "ns " << mill << "ms " << sec << "초";

}

9번째 줄 코드를 실행하기 전에 7번째 줄에서 시작 시간을 표시하고, 11번째 줄에서 종료 시간을 표시한 뒤, 종료 시간 - 시작 시간을 하여 나온 값을 각각 나노초, 밀리초, 초로 변환하여 17번째 줄에서 출력하는 코드이다.

각주[편집 / 원본 편집]

  1. 한 틱이 1초이면 1초 간격으로 측정한다는 것이다. 틱의 간격이 클수록 부정확해진다. 예를 들어 한 틱이 1초이면 1.4초에 실행된 코드는 1초로 취급된다.
• 현재 페이지 URL 줄이기