logo

Chrono u C++

je C++ zaglavlje koje pruža zbirku tipova i funkcija za rad s vremenom. Dio je C++ standardne biblioteke predložaka (STL) i uključen je u C++11 i novije verzije.

nudi tri glavne vrste satova: system_clock steady_clock i high_resolution_clock. Ovi satovi se koriste za mjerenje vremena na razne načine.

system_clock predstavlja zidni sat stvarnog vremena za cijeli sustav. Na to utječu prilagodbe vremena sustava.
steady_clock predstavlja monotono rastući sat na koji ne utječu promjene sistemskog vremena.
high_resolution_clock je sat s najkraćim vremenskim periodom dostupnim u sustavu.



puni oblik i d e

također nudi zbirku tipova trajanja uključujući trajanjekoji se može koristiti za predstavljanje trajanja vremena. Rep je tip reprezentacije (kao što je int ili long), a Period je omjer trajanja (kao što su nanosekunde ili sekunde).
Dodatnopruža zbirku vrsta vremenskih točaka uključujući time_pointkoji se može koristiti za predstavljanje točke u vremenu. Sat je vrsta sata (kao što je system_clock), a Trajanje je vrsta trajanja (kao što su sekunde)

Chrono biblioteka se koristi za obradu datuma i vremena. Ova je biblioteka osmišljena kako bi se pozabavila činjenicom da mjerači vremena i satovi mogu biti različiti na različitim sustavima i stoga se s vremenom poboljšavala u smislu preciznosti. Jedinstvena stvar kod chronoa je da pruža a koncept neutralne preciznosti odvajanjem trajanja i vremenske točke (vremenske točke) od određenih satova. chrono je naziv zaglavlja, a također i pod-imenskog prostora: Svi elementi u ovom zaglavlju (osim specijalizacija common_type) nisu definirani izravno pod std imenskim prostorom (kao većina standardne biblioteke), već pod std::chrono imenski prostor . Elementi u ovom naslovu bave se vremenom. To se uglavnom postiže pomoću tri koncepta:

Trajanje

Objekt trajanja izražava vremenski raspon pomoću brojanja poput minute, dva sata ili deset milisekundi. Na primjer, '42 sekunde' mogu biti predstavljene trajanjem koje se sastoji od 42 otkucaja vremenske jedinice od 1 sekunde. 

CPP
// C++ program to illustrate the utility  // function duration::count #include     #include   int main () {  using namespace std::chrono;  // std::chrono::milliseconds is an   // instantiation of std::chrono::duration:- 1 second  milliseconds mil(1000);     mil = mil*60;    std::cout << "duration (in periods): ";  std::cout << mil.count() << " milliseconds.n";    std::cout << "duration (in seconds): ";  std::cout << (mil.count() * milliseconds::period::num /   milliseconds::period::den);  std::cout << " seconds.n";  return 0; } 

Izlaz:

duration (in periods): 60000 milliseconds. duration (in seconds): 60 seconds.

Sat

dizajn baze podataka u dbms-u

Sat se sastoji od početne točke (ili epohe) i brzine otkucaja. Na primjer, sat može imati epohu od 22. veljače 1996. i otkucavati svake sekunde. C++ definira tri vrste takta:

    sustav_sat-To je trenutno vrijeme prema sustavu (obični sat koji vidimo na alatnoj traci računala). Napisan je kao- std::chrono::system_clockstalan_sat-To je monoton sat koji se nikad neće namjestiti. Radi ujednačenom brzinom. Zapisuje se kao- std::chrono::steady_clocksat_visoke_rezolucije- Omogućuje najmanji mogući tick period. Napisan je kao-std::chrono::high_resolution_clock

Vremenska točka

Objekt time_point izražava točku u vremenu u odnosu na epohu sata. Interno objekt pohranjuje objekt tipa trajanja i koristi tip sata kao referencu za svoju epohu.  

CPP
// C++ program to illustrate time point // and system clock functions #include    #include  #include  // Function to calculate // Fibonacci series long fibonacci(unsigned n) {  if (n < 2) return n;  return fibonacci(n-1) + fibonacci(n-2); } int main() {  // Using time point and system_clock  std::chrono::time_point<std::chrono::system_clock> start end;  start = std::chrono::system_clock::now();  std::cout << "f(42) = " << fibonacci(42) << 'n';  end = std::chrono::system_clock::now();  std::chrono::duration<double> elapsed_seconds = end - start;  std::time_t end_time = std::chrono::system_clock::to_time_t(end);  std::cout << "finished computation at " << std::ctime(&end_time)  << "elapsed time: " << elapsed_seconds.count() << "sn"; } 

Izlaz:

f(42) = 267914296 finished computation at Wed Jan 4 05:13:48 2017 elapsed time: 2.14538s

Važno je napomenuti da preciznost i točnost satova i trajanja koje pružamože varirati ovisno o sustavu i platformi i uvijek je dobra ideja provjeriti dokumentaciju vaše platforme za više informacija.

c# prekidač

Napravi kviz