logo

Crono en C++

és una capçalera C++ que proporciona una col·lecció de tipus i funcions per treballar amb el temps. Forma part de la biblioteca de plantilles estàndard (STL) de C++ i s'inclou a C++ 11 i versions posteriors.

proporciona tres tipus principals de rellotges: system_clock steady_clock i high_resolution_clock. Aquests rellotges s'utilitzen per mesurar el temps de diverses maneres.

system_clock representa el rellotge de paret en temps real de tot el sistema. Es veu afectat pels ajustos de temps del sistema.
steady_clock representa un rellotge que augmenta monòtonament que no es veu afectat pels canvis en l'hora del sistema.
high_resolution_clock és el rellotge amb el període de tick més curt disponible al sistema.



java convertir char a int

també ofereix una col·lecció de tipus de durada inclosa la duradaque es pot utilitzar per representar una durada de temps. Rep és el tipus de representació (com int o long) i Period és la relació de la durada (com ara nanosegons o segons).
A mésproporciona una col·lecció de tipus de punt de temps inclòs time_pointque es pot utilitzar per representar un punt en el temps. Clock és el tipus de rellotge (com ara system_clock) i Duration és el tipus de durada (com ara segons)

La biblioteca Chrono s'utilitza per tractar la data i l'hora. Aquesta biblioteca va ser dissenyada per tractar el fet que els temporitzadors i els rellotges poden ser diferents en diferents sistemes i així millorar amb el temps en termes de precisió. L'única cosa del crono és que proporciona a concepte de precisió neutre separant la durada i el punt de temps (punt de temps) dels rellotges específics. chrono és el nom d'una capçalera i també d'un subespai de noms: tots els elements d'aquesta capçalera (excepte les especialitzacions common_type) no es defineixen directament sota l'espai de noms std (com la majoria de la biblioteca estàndard), sinó sota el espai de noms std::chrono . Els elements d'aquesta capçalera tracten el temps. Això es fa principalment mitjançant tres conceptes:

Durada

Un objecte de durada expressa un interval de temps mitjançant un recompte com un minut dues hores o deu mil·lisegons. Per exemple, "42 segons" es podria representar per una durada que consta de 42 ticks d'una unitat de temps d'1 segon. 

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; } 

Sortida:

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

Rellotge

javac no es reconeix

Un rellotge consta d'un punt de partida (o època) i una taxa de tictac. Per exemple, un rellotge pot tenir una època del 22 de febrer de 1996 i marcar cada segon. C++ defineix tres tipus de rellotge:

    rellotge_sistema-És l'hora actual segons el sistema (rellotge normal que veiem a la barra d'eines de l'ordinador). S'escriu com- std::chrono::system_clockrellotge_constante-És un rellotge monòton que no s'ajustarà mai. Va a un ritme uniforme. S'escriu as- std::chrono::steady_clockrellotge_alta_resolució- Proporciona el període més petit possible. S'escriu com-std::chrono::high_resolution_clock

Punt de temps

Un objecte time_point expressa un punt en el temps relatiu a l'època d'un rellotge. Internament, l'objecte emmagatzema un objecte d'un tipus de durada i utilitza el tipus Clock com a referència per a la seva època.  

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"; } 

Sortida:

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

És important tenir en compte que la precisió i exactitud dels rellotges i les durades proporcionades perpot variar segons el sistema i la plataforma i sempre és una bona idea consultar la documentació de la vostra plataforma per obtenir més informació.

algorisme d'ordenació d'inserció

Crea un qüestionari