Třída file_clock
Tyto hodiny můžou představovat rozsah a rozlišení hodnot času souboru používaných v systému souborů.
Syntaxe
using file_clock = std::filesystem::_File_time_clock; // C++20
Poznámky
V implementaci Microsoftu je epocha nebo čas file_clock
zahájení měření času 1/1/1601 00:00:00.
Standard ISO C++ poskytuje volbu mezi poskytováním to_sys()
from_sys()
a , nebo to_utc()
a .from_utc()
Implementace Microsoftu zvolila to_utc a from_utc.
Členové
Název | Popis |
---|---|
from_utc |
Statický. Převede na utc_time .file_time |
now |
Statický. Vrátí aktuální mezinárodní atomový čas. |
to_utc |
Statický. Převede na file_time utc_time . |
Nečlenové
Název | Popis |
---|---|
from_stream |
Parsujte file_clock z daného datového proudu pomocí zadaného formátu. |
operator<< |
Výstup file_time do daného datového proudu. |
Aliasy typů pohodlí
Název | Popis |
---|---|
file_clock::duration |
V implementaci Microsoftu je to synonymum pro duration<long long, ratio<1, 10'000'000> . Představuje dobu trvání měřenou v jednotkách 100 nanosekund. |
file_clock::time_point |
Synonymum pro time_point<File_time_clock> . Používá se k reprezentaci time_point pro tento čas. |
file_clock::period |
V implementaci Microsoftu je to synonymum pro ratio<1, 10'000'000> . Představuje čas v sekundách (100 nanosekund) mezi jednotlivými značkami v době trvání. |
file_clock::rep |
Synonymum pro typ (long long ) sloužící k reprezentaci integrálních jednotek v tomto formátu file_clock::duration . |
Příbuzný
Název | Popis |
---|---|
file_time |
Synonymum pro time_point<file_clock, Duration> . Představuje pro time_point objekt file_clock . Zadáte hodnotu Duration . Definováno v std::chrono |
Veřejné konstanty
Název | Popis |
---|---|
file_clock::is_steady constant |
Určuje, zda je typ hodin stabilní. Její hodnota je false . |
Požadavky
Hlavička: <chrono>
(od C++20)
Obor názvů: std::chrono
Možnost kompilátoru: /std:c++latest
from_utc
Statická metoda, která převede na utc_time
.file_time
template <class Duration>
static file_time<common_type_t<_Duration, chrono::seconds>>
from_utc(const utc_time<Duration>& t);
Parametry
t
Převod.utc_time
Vrácená hodnota
A file_time
, který představuje ekvivalent utc_time
jako t
. Vypočítá se jako utc_clock::to_sys(utc_time).time_since_epoch()
minus počet přestupných sekund před 1. lednem 2017 (27). Windows 10 verze 1809 a Windows Server 2019 zavedly podporu pro přestupné sekundy. Tato podpora je ve výchozím nastavení povolená, i když je možné ji zakázat. Pokud je tato možnost povolená, jsou v čase zahrnuté pouze skokové sekundy po červenci 2018 (ne v období od 1. ledna 2017 do července 2018).
Doporučujeme místo std::chrono::clock_cast
přímého volání této funkce převést časové body mezi hodinami. To je obzvláště důležité pro file_clock
to, že standard ISO C++ umožňuje tomuto typu definovat buď to_utc
a from_utc
, nebo to_sys
a a from_sys
. Vzhledem k tomu, že se implementace může lišit podle dodavatele, můžete místo toho použít clock_cast
, což poskytuje všichni dodavatelé knihoven.
Příklad: from_utc
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
std::cout << clock_cast<file_clock>(utc_clock::now());
return 0;
}
2021-08-17 00:20:41.2594557
to_utc
Statická metoda, která převede na file_time
.utc_time
template <class Duration>
static utc_time<common_type_t<Duration, seconds>>
to_utc(const file_time<Duration>& t);
Parametry
t
Převod.file_time
Návratová hodnota
A utc_time
, který představuje ekvivalent file_time
jako t
. Místo přímého volání této funkce doporučujeme std::chrono::clock_cast
převést časové body mezi hodinami. To je obzvláště důležité pro file_clock
to, že standard ISO C++ umožňuje tomuto typu definovat buď to_utc
a from_utc
, nebo to_sys
a a from_sys
. Vzhledem k tomu, že se implementace může lišit podle dodavatele, můžete místo toho použít clock_cast
, což poskytuje všichni dodavatelé knihoven.
Příklad: to_utc
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
std::cout << clock_cast<std::chrono::utc_clock>(file_clock::now());
return 0;
}
2021-08-17 00:20:41.2594557
is_steady
Statická hodnota, která určuje, zda je typ hodin stabilní. V implementaci is_steady
Microsoftu je false
. Díky tomu tyto hodiny nejsou vhodné pro měření doby trvání operace, protože nestejné hodiny je možné upravit, zatímco časujete něco tak, aby měřená doba mohla být vypnutá nebo dokonce záporná. high_resolution_clock
Místo toho použijte události k času.
static const bool is_steady = false;
nyní
Statická metoda, která vrací aktuální systémový čas s nanosekundovým rozlišením upraveným epochou file_clock
.
static time_point now() noexcept;
Návratová hodnota
Objekt time_point , který představuje aktuální čas.
Viz také
<chrono>
gps_clock class
high_resolution_clock
local_t
Struct
steady_clock
Struct
system_clock
Struct
Třída tai_clock
Třída utc_clock
Referenční informace k souborům hlaviček