​

这里的代码示例:



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

int tickTest()
{
using namespace std::chrono;
steady_clock::time_point t1 = steady_clock::now();
std::cout << "printing out 1000 stars...\n";
for (int i=0; i<1000; ++i) std::cout << "*";
std::cout << std::endl;
steady_clock::time_point t2 = steady_clock::now();
duration<double> time_span = duration_cast<duration<double>>(t2 - t1);
std::cout << "It took me " << time_span.count() << " seconds.";
std::cout << std::endl;
return 0;
}
int main()
{
cout << "Hello time world!" << endl;
using namespace std::chrono;
system_clock::time_point tp_epoch; // epoch value
time_point <system_clock,duration<int>> tp_seconds (duration<int>(1));
system_clock::time_point tp (tp_seconds);
//
std::cout << "1 second since system_clock epoch = ";
std::cout << tp.time_since_epoch().count();
std::cout << " system_clock periods." << std::endl;
// display time_point:
std::time_t tt_0 = system_clock::to_time_t(tp);
std::cout << "time_point tp is: " << ctime(&tt_0);
//
std::chrono::duration<int,std::ratio<60*60*24> > one_day (1);
system_clock::time_point today = system_clock::now();
system_clock::time_point tomorrow = today + one_day;
//
std::time_t tt;

tt = system_clock::to_time_t ( today );
std::cout << "today is: " << ctime(&tt);

tt = system_clock::to_time_t ( tomorrow );
std::cout << "tomorrow will be: " << ctime(&tt);

std::cout << "------------tickTest()---------------" << std::endl;
tickTest();
return 0;
}

 



#include <iostream>
#include <chrono>
#include <ctime>
#include <ratio>
#include <windows.h>

using namespace std;

int tickTest()
{
using namespace std::chrono;
steady_clock::time_point t1 = steady_clock::now();
std::cout << "printing out 1000 stars...\n";
for (int i=0; i<1000; ++i) std::cout << "*";
std::cout << std::endl;
steady_clock::time_point t2 = steady_clock::now();
duration<double> time_span = duration_cast<duration<double>>(t2 - t1);
std::cout << "It took me " << time_span.count() << " seconds.";
std::cout << std::endl;
return 0;
}
int main()
{
cout << "Hello time world!" << endl;
using namespace std::chrono;
system_clock::time_point tp_epoch; // epoch value
time_point <system_clock,duration<int>> tp_seconds (duration<int>(1));
system_clock::time_point tp (tp_seconds);
//
std::cout << "1 second since system_clock epoch = ";
std::cout << tp.time_since_epoch().count();
std::cout << " system_clock periods." << std::endl;
// display time_point:
std::time_t tt_0 = system_clock::to_time_t(tp);
std::cout << "time_point tp is: " << ctime(&tt_0);
//
std::chrono::duration<int,std::ratio<60*60*24> > one_day (1);
system_clock::time_point today = system_clock::now();
system_clock::time_point tomorrow = today + one_day;
//
std::time_t tt;

tt = system_clock::to_time_t ( today );
std::cout << "today is: " << ctime(&tt);

tt = system_clock::to_time_t ( tomorrow );
std::cout << "tomorrow will be: " << ctime(&tt);

std::cout << "------------tickTest()---------------" << std::endl;

LARGE_INTEGER nFreq;
LARGE_INTEGER nBeginTime;
LARGE_INTEGER nEndTime;
double time;
QueryPerformanceFrequency(&nFreq);
QueryPerformanceCounter(&nBeginTime);

//Sleep(1000);
tickTest();

QueryPerformanceCounter(&nEndTime);
// 计算精确时间
time=(double)(nEndTime.QuadPart-nBeginTime.QuadPart)/(double)nFreq.QuadPart;
std::cout << "----time: " <<time<< std::endl;
//Sleep(1000);
return 0;
}
//