리듬게임 Chrono Circle에 대한 내용은 크로노 서클 문서 참고하십시오.
이잉
1. C++의 표준 라이브러리 chrono
#!syntax cpp
#include <iostream>
#include <chrono>
int main(void) {
std::chrono::system_clock::time_point start = std::chrono::system_clock::now();
SimpleFunc();
std::chrono::system_clock::time_point end = std::chrono::system_clock::now();
std::chrono::nanoseconds times = end - start;
std::cout << "SimpleFunc를 실행하는데 걸린 시간: " << times.count() << std::endl;
return 0;
}
chrono를 이용한 간단한 함수의 실행시간 측정 예제C++의 표준으로 포함된 시간관련 라이브러리이다. C++11표준의 제정 이전부터 boost라는 서드파티 라이브러리의 기능중 하나였으며 C++11에서부터 표준에 포함되어 #include<chrono>를 추가하면 사용이 가능하다.
참고로 chrono는 다음과 같이 선언되어 있다
#!syntax cpp
namespace std {
namespace chrono {
//여기에 chrono의 관련 함수들이 선언
}
}
그렇기에 chrono의 기능들을 사용하려면 std::chrono를 붙여야 사용이 가능하다.
chrono의 가장 큰 특징은 나노초 단위로 정밀한 시간연산이 가능하다는 것인데, 이를 이용해 특정 함수의 정밀한 실행 시간을 측정하는 것이 가능해졌다. chrono이전에는 windows.h를 인클루드하여 GetTickCount를 주로 썼으나 이것의 문제는 앞에서 인클루드하는 헤더 파일의 이름에서 알 수 있듯이 윈도우에 종속된 기능이라는 매우 큰 문제점이 있었다. 그러나 chrono는 윈도우에 종속되어 있는 GetTickCount와는 달리 C++이라는 언어의 표준이니 호환성 문제도 거의 없다시피 하니 부담도 없다.