クロノライブラリでナノ秒の精度を得ることができますが、std::chrono::high_resolution_clock::now()
をlong int
に変換する方法がわかりません。私はこの試みた:高解像度のクロック時間を整数に変換する(クロノ)
#include <chrono>
#include <iostream>
using namespace std;
int main() {
typedef std::chrono::high_resolution_clock Clock;
long int val = Clock::now();
cout << val << endl;
cin.ignore();
return 0;
}
をしかし、これは私にエラーました:error C2440: 'initializing' : cannot convert from 'std::chrono::system_clock::time_point' to 'long'
私は64ビットのintに変換することができますどのように?私ができなければ、クロノがどのように役立つか分かりません。
あなたは[ドキュメント](http://en.cppreference.com/w/cpp/chrono/system_clock/now)を読めばあなたが表示されます'now'関数は(' error_メッセージと同様に)['time_point'](http://en.cppreference.com/w/cpp/chrono/time_point)オブジェクトを返します。時間を印刷する方法の例については、 'time_point'リンクを参照してください。時間を秒単位で指定する場合は、たとえばを使用します。 ['to_time_t'](http://en.cppreference.com/w/cpp/chrono/system_clock/to_time_t)。 –
「」の利点の1つは、タイプセーフです。 2つの例は、時間点と時間間隔が別々の交換不可能な種類であり、種類によって単位が追跡されるため、ミリ秒単位で秒数を混同することはできません。 –
bames53