Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
abs(duration)
ise ddöndürürd >= d.zero(); aksi takdirde döndürür-d.
Sözdizimi
template <class Rep, class Period>
constexpr duration<Rep, Period> abs(duration<Rep, Period> d ); // C++17
Parametreler
Rep
Kaynağın durationdiç gösteriminin türü.
Period
Bir std::ratio saniyenin kaynak Rep türüne (saniye başına Rep) oranını temsil eden bir tür.
d
Kaynak duration nesne.
Dönüş değeri
değerinin dmutlak değeri.
Örnek: abs(duration)
// compile using: /std:c++latest
#include <chrono>
#include <iostream>
int main()
{
std::cout << abs(-24h);
return 0;
}
24h
ceil(duration)
Hedef türünde belirtilen durationdeğerinden büyük veya buna eşit en küçük temsil edilebilir duration değeri döndürür.
Sözdizimi
template<class ToDuration, class Rep, class Period>
constexpr ToDuration
ceil(const duration<Rep, Period>& d); // C++17
Parametreler
ToDuration
Hedef duration türü. uzmanlık alanı olarak durationkısıtlanmış.
Rep
Kaynağın durationdiç gösteriminin türü.
Period
Bir std::ratio saniyenin kaynak Rep türüne (saniye başına Rep) oranını temsil eden bir tür.
d
Kaynak duration nesne.
Dönüş değeri
içinde duration parametresinden ToDurationbüyük veya ona eşit en d küçük temsil edilebilir değeri döndürür.
Açıklamalar
ceil türü bir örneği olmadığı sürece ToDuration aşırı yükleme çözümlemesine durationkatılmaz.
ceil(time_point)
Hedefte duration belirtilen zaman noktasından büyük veya buna eşit en küçük zaman noktasını döndürür.
Sözdizimi
template<class ToDuration, class Clock, class Duration>
constexpr time_point<Clock, ToDuration>
ceil(const time_point<Clock, Duration>& t); // C++17
Parametreler
ToDuration
Hedef duration türü. uzmanlık alanı olarak durationkısıtlanmış.
Clock
Sonucun ortak saat türü ve kaynak parametresi tp.
Duration
duration türü.tp
tp
Kaynak time_point nesne.
Dönüş değeri
ile temsil edilebilen ToDuration en küçük zaman noktasını döndürür ve bu değer değerinden büyük veya buna eşit olur tp. Etkili bir şekilde, time_point<Clock, ToDuration>(ceil<ToDuration>(tp.time_since_epoch()));.
Açıklamalar
ceil türü bir örneği olmadığı sürece ToDuration aşırı yükleme çözümlemesine durationkatılmaz.
clock_cast
Bir time_point saatin bir saatini başka bir saat için eşdeğere time_point dönüştürür.
Sözdizimi
template <class DestClock, class SourceClock, class Duration>
auto clock_cast(const time_point<SourceClock, Duration>& t); // C++20
Parametreler
DestClock
dönüştürülecek time_point saat türü.
Duration
duration
SourceClockbelirttiğiniz veya değerinin değeri.
SourceClock
Dönüştürülecek saat time_point türü temel alır.
t
time_point Dönüştürülecek.
Dönüş değeri
time_point eşdeğerit, ancak öğesine özgü.DestClock
Açıklamalar
ve parametreleri SourceClockDuration , açıkça geçirilmediğinde sınıf şablonu bağımsız değişken kesintisi yoluyla çıkarılabilir. Örneğin, verilen clock_cast<utc_clock>(file_clock::now()), SourceClock olarak file_clockçıkarılır ve Duration olarak çıkarılır file_clock::duration.
Aşağıdaki iyi biçimlendirilmiş saat dönüştürmeleri listesinden, öğesinden SourceClockDestClock öğesine ulaşmak için en az dönüştürme adımı gerektiren seçilidir.
clock_time_conversion<DestClock, SourceClock>{}(t)
clock_time_conversion<DestClock, system_clock>{}(
clock_time_conversion<system_clock, SourceClock>{}(t))
clock_time_conversion<DestClock, utc_clock>{}(
clock_time_conversion<utc_clock, SourceClock>{}(t))
clock_time_conversion<DestClock, utc_clock>{}(
clock_time_conversion<utc_clock, system_clock>{}(
clock_time_conversion<system_clock, SourceClock>{}(t)))
clock_time_conversion<DestClock, system_clock>{}(
clock_time_conversion<system_clock, utc_clock>{}(
clock_time_conversion<utc_clock, SourceClock>{}(t)))
Neler clock_time_conversion yaptığı hakkında daha fazla bilgi için bkz clock_time_conversion . yapı.
Örnek clock_cast
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
utc_clock::time_point t = clock_cast<utc_clock>(file_clock::now());
std::cout << t;
return 0;
}
2021-10-11 22:58:17.8540720
current_zone
Geçerli saat dilimi nesnesini alır.
Sözdizimi
const time_zone* current_zone(); // C++20
Dönüş değeri
bir çağrısı time_zonetarafından sanki öğesine get_tzdb().current_zone() bir işaretçi döndürür. Saat dilimi veritabanına ilk başvuruysa ve saat dilimi veritabanı başlatılamıyorsa bir runtime_error özel durum oluşturur.
duration_cast
Belirtilen hedef duration türüne a duration yazar.
Sözdizimi
template <class ToDuration, class Rep, class Period>
constexpr ToDuration
duration_cast(const duration<Rep, Period>& d); // C++11
Parametreler
ToDuration
Hedef duration türü. uzmanlık alanı olarak durationkısıtlanmış.
Rep
Kaynağın durationdiç gösteriminin türü.
Period
Bir std::ratio saniyenin kaynak Rep türüne (saniye başına Rep) oranını temsil eden bir tür.
d
Hedef duration türe yayın için kaynak duration nesne.
Dönüş değeri
türünü temsil ToDurationdurationeden bir d nesne. Hedef türe sığması için gerekirse kesilir. Kayan noktanın duration bir integrale duration dönüştürülme sonucu, kaynak bir NaNsonsuz içeriyorsa veya hedefte durationtemsil edilemeyecek kadar büyükse tanımsız olur.
Açıklamalar
Kaynak dönem hedef dönem tarafından tam olarak bölünebilir olduğunda (örneğin, dakikaları saniyeye dönüştürdüğünüzde) türler arasında duration_cast dönüştürme yapmak için kullanmanız duration gerekmez. Ayrıca, kayan nokta duration türleri arasında dönüştürme yapmak için buna ihtiyacınız yoktur. Sıradan atamaları veya oluşturucuları kullanarak her iki dönüştürmeyi duration de yapabilirsiniz.
duration_cast , örneği olmadığı sürece ToDuration aşırı yükleme çözümlemesine durationkatılmaz. Tüm dönüştürmeleri örtük dönüştürmeler yerine kullanarak static_cast yapar. Mümkünse çarpmalardan ve bölmelerden kaçınılır. Örneğin, derleyici hedef ve kaynak dönemlerin ortak oranının 1 paydası veya paydası olduğunu bildiğinden. Hesaplamalar kullanılabilir en geniş türde yapılır, ardından bitirildiğinde sonuç türüne göre static_cast dönüştürülür.
Örnek duration_cast
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
seconds s(1);
std::cout << duration_cast<microseconds>(s) << '\n';
std::cout << duration_cast<nanoseconds>(s) << '\n';
return 0;
}
1000000us
1000000000ns
floor(duration)
Belirtilen durationdeğerinden küçük veya buna eşit olan hedef türündeki en büyük temsil edilebilir duration değeri döndürür.
Sözdizimi
template<class ToDuration, class Rep, class Period>
constexpr ToDuration
floor(const duration<Rep, Period>& d); // C++17
Parametreler
ToDuration
Hedef duration türü. uzmanlık alanı olarak durationkısıtlanmış.
Rep
Kaynağın durationdiç gösteriminin türü.
Period
Bir std::ratio saniyenin kaynak Rep türüne (saniye başına Rep) oranını temsil eden bir tür.
d
Kaynak duration nesne.
Dönüş değeri
parametresinden durationküçük veya ona eşit olan içindeki ToDuration en büyük d temsil edilebilir değeri döndürür.
Açıklamalar
floor türü bir örneği olmadığı sürece ToDuration aşırı yükleme çözümlemesine durationkatılmaz.
floor(time_point)
Hedefte duration belirtilen zaman noktasından küçük veya buna eşit en büyük zaman noktasını döndürür.
Sözdizimi
template<class ToDuration, class Clock, class Duration>
constexpr time_point<Clock, ToDuration>
floor(const time_point<Clock, Duration>& tp); // C++17
Parametreler
ToDuration
Hedef duration türü. uzmanlık alanı olarak durationkısıtlanmış.
Clock
Sonucun ortak saat türü ve kaynak parametresi tp.
Duration
duration türü.tp
tp
Kaynak time_point nesne.
Dönüş değeri
küçük veya eşit ToDurationolan kullanılarak tp temsil edilebilen en büyük zaman noktasını döndürür. Etkili bir şekilde, time_point<Clock, ToDuration>(floor<ToDuration>(tp.time_since_epoch()));.
Açıklamalar
floor türü bir örneği olmadığı sürece ToDuration aşırı yükleme çözümlemesine durationkatılmaz.
from_stream
Giriş akışını, belirtilen biçimi kullanarak , std::chrono, , daymonth, month_day, , weekday, yearvb. gibi year_monthzaman veya aralık türlerinden birinde year_month_day ayrıştırın.
Ayrıştırma başarısız olursa (is.setstateios_base::failbit) çağrılır ve çıkış parametresi değiştirilmez.
// 1) day - C++20
template<class charT, class traits, class Alloc = allocator<charT>>
basic_istream<charT, traits>&
from_stream(
basic_istream<charT, traits>& is, const charT* fmt,
day& d, basic_string<charT, traits, Alloc>* abbrev = nullptr,
minutes* offset = nullptr);
// 2) duration - C++20
template<class charT, class traits, class Rep, class Period, class Alloc = allocator<charT>>
basic_istream<charT, traits>&
from_stream(
basic_istream<charT, traits>& is, const charT* fmt,
duration<Rep, Period>& dur, basic_string<charT, traits, Alloc>* abbrev = nullptr,
minutes* offset = nullptr);
// 3) file_time - C++20
template<class charT, class traits, class Duration, class Alloc = allocator<charT>>
basic_istream<charT, traits>&
from_stream(
basic_istream<charT, traits>& is, const charT* fmt,
file_time<Duration>& ft, basic_string<charT, traits, Alloc>* abbrev = nullptr,
minutes* offset = nullptr);
// 4) gps_time - C++20
template<class charT, class traits, class Duration, class Alloc = allocator<charT>>
basic_istream<charT, traits>&
from_stream(
basic_istream<charT, traits>& is, const charT* fmt,
gps_time<Duration>& gt, basic_string<charT, traits, Alloc>* abbrev = nullptr,
minutes* offset = nullptr);
// 5) local_time - C++20
template<class charT, class traits, class Duration, class Alloc = allocator<charT>>
basic_istream<charT, traits>&
from_stream(
basic_istream<charT, traits>& is, const charT* fmt,
local_time<Duration>& lt, basic_string<charT, traits, Alloc>* abbrev = nullptr,
minutes* offset = nullptr);
// 6) month - C++20
template<class charT, class traits, class Alloc = allocator<charT>>
basic_istream<charT, traits>&
from_stream(
basic_istream<charT, traits>& is, const charT* fmt,
month& m, basic_string<charT, traits, Alloc>* abbrev = nullptr,
minutes* offset = nullptr);
// 7) month_day - C++20
template<class charT, class traits, class Alloc = allocator<charT>>
basic_istream<charT, traits>&
from_stream(
basic_istream<charT, traits>& is, const charT* fmt,
month_day& md, basic_string<charT, traits, Alloc>* abbrev = nullptr,
minutes* offset = nullptr);
// 8) utc_time - C++20
template<class charT, class traits, class Duration, class Alloc = allocator<charT>>
basic_istream<charT, traits>&
from_stream(
basic_istream<charT, traits>& is, const charT* fmt,
utc_time<Duration>& ut, basic_string<charT, traits, Alloc>* abbrev = nullptr,
minutes* offset = nullptr);
// 9) sys_time - C++20
template<class charT, class traits, class Duration, class Alloc = allocator<charT>>
basic_istream<charT, traits>&
from_stream(
basic_istream<charT, traits>& is, const charT* fmt,
sys_time<Duration>& st, basic_string<charT, traits, Alloc>* abbrev = nullptr,
minutes* offset = nullptr);
// 10) tai_time - C++20
template<class charT, class traits, class Duration, class Alloc = allocator<charT>>
basic_istream<charT, traits>&
from_stream(
basic_istream<charT, traits>& is, const charT* fmt,
tai_time<Duration>& tt, basic_string<charT, traits, Alloc>* abbrev = nullptr,
minutes* offset = nullptr);
// 11) weekday - C++20
template<class charT, class traits, class Alloc = allocator<charT>>
basic_istream<charT, traits>&
from_stream(
basic_istream<charT, traits>& is, const charT* fmt,
weekday& wd, basic_string<charT, traits, Alloc>* abbrev = nullptr,
minutes* offset = nullptr);
// 12) year - C++20
template<class charT, class traits, class Alloc = allocator<charT>>
basic_istream<charT, traits>&
from_stream(
basic_istream<charT, traits>& is, const charT* fmt,
year& y, basic_string<charT, traits, Alloc>* abbrev = nullptr,
minutes* offset = nullptr);
// 13) year_month - C++20
template<class charT, class traits, class Alloc = allocator<charT>>
basic_istream<charT, traits>&
from_stream(
basic_istream<charT, traits>& is, const charT* fmt,
year_month& ym, basic_string<charT, traits, Alloc>* abbrev = nullptr,
minutes* offset = nullptr);
// 14) year_month_day - C++20
template<class charT, class traits, class Alloc = allocator<charT>>
basic_istream<charT, traits>&
from_stream(
basic_istream<charT, traits>& is, const charT* fmt,
year_month_day& ymd, basic_string<charT, traits, Alloc>* abbrev = nullptr,
minutes* offset = nullptr);
Şablon parametreleri
Alloc
Dizenin bellek ayırmasını ve serbest bırakmasını işleyen ayırıcı nesnesini temsil eden tür.
charT
Akıştan okunacak ve dizede depolanacak tek bir karakterin veri türü. C++ Standart Kitaplığı, bu sınıf şablonunun, için , stringcharwstring, için wchar_tve u16stringchar16_tiçin türündeki öğelerin tür u32stringtanımlarıyla char32_t birlikte uzmanlıklar sağlar.
traits
charT ve basic_string uzmanlık özniteliklerini basic_istream açıklar.
Rep
Bir türün duration iç gösterim türü.
Period
Bir std::ratio saniyenin kaynak Rep türüne (saniye başına Rep) oranını temsil eden bir tür.
Duration
duration Zaman özelleştirmesi için kullanılan tür.
Parametreler
abbrev
değilse abbrevve biçim belirtici nullptr belirtilirse %Z ve ayrıştırma başarılı olursa ayrıştırılan abbrev değeri içerir.
d
Ayrıştırma başarılı olursa, işlevin döndürdüğü ayrıştırılan günü içerir.
dur
akışından duration ayrıştırıldı.
fmt
Girişle eşleştirmek için kullanılan biçim dizesi. Ayrıştırma biçimlendirme seçenekleri listesi için bkz . Biçim dizelerini ayrıştırma.
ft
akışından file_time ayrıştırıldı.
gt
akışından gps_time ayrıştırıldı.
is
Ayrıştırmak için giriş akışı.
lt
akışından local_time ayrıştırıldı.
m
akışından month ayrıştırıldı.
md
akışından month_day ayrıştırıldı.
offset
offsetdeğilse ve veya gibi nullptr%z biçim belirtici %Ez veya değiştirilmiş değişken belirtilirse %0z ve ayrıştırma başarılı olursa, offset ayrıştırılan değere işaret eder.
st
akışından sys_time ayrıştırıldı.
tt
akışından tai_time ayrıştırıldı.
ut
akışından utc_time ayrıştırıldı.
wd
akışından weekday ayrıştırıldı.
y
akışından year ayrıştırıldı.
ym
akışından year_month ayrıştırıldı.
ymd
akışından year_month_day ayrıştırıldı.
Dönüş değeri
Giriş akışı, is
Örnek: from_stream
// compile using: /std:c++latest
#include <chrono>
#include <iostream>
int main()
{
std::istringstream str{ "22" };
std::basic_istream<char> stream{ str.rdbuf() };
std::chrono::day d;
std::chrono::from_stream(stream, "%d", d);
std::cout << d << "\n";
return 0;
}
22
Açıklamalar
7)%Z kullanılır ve başarıyla ayrıştırılırsa, abbrev null değilse bu değer *abbrev atanır. (veya değiştirilmiş bir değişken) kullanılırsa %z ve başarıyla ayrıştırılırsa, bu değer null olmayan değere *offsetoffset atanır.
12) Kullanılırsa ve başarıyla ayrıştırılırsa %Z , bu değer null olmayan değere *abbrevabbrev atanır. (veya değiştirilmiş bir değişken) kullanılırsa %z ve başarıyla ayrıştırılırsa, bu değer null olmayan değere *offsetoffset atanır.
from_stream dizeleri biçimlendirme
Biçim şu dizelerden biri olabilir:
Tarih
| Belirleyici | Açıklama |
|---|---|
%D |
Eşdeğer %m/%d/%y |
%F%
NF |
ile eşdeğerdir %Y-%m-%d. Genişlik Nile değiştirilirse, genişlik yalnızca %Yöğesine uygulanır. |
%x%Ex |
Yerel ayarın tarih gösterimi.%Ex yerel ayarın alternatif tarih gösterimini ayrıştırır.1 |
Gün
| Belirleyici | Açıklama |
|---|---|
%d%Od%
Nd%e%Oe%
Ne |
Ondalık sayı olarak ayın günü.%
Nd , okunacak en fazla karakter sayısını belirtir, örneğin %1d. N belirtilmezse, varsayılan değer 2'dir.Baştaki sıfırlara izin verilir ancak gerekli değildir. %Od (sıfır değil harfi O) yerel ayarın ayın gününün alternatif gösterimini yorumlar.1 %e ile eşdeğerdir %d ve gibi %ddeğiştirilebilir.1 |
Haftanın günü
| Belirleyici | Açıklama |
|---|---|
%a%A |
Yerel ayarın tam veya kısaltılmış büyük/küçük harfe duyarsız hafta içi adı.%A eşdeğerdir %a |
%u%
Nu |
Iso hafta içi günü ondalık sayı (1-7), burada Pazartesi 1 olur. %
Nu , okunacak en fazla karakter sayısını belirtir, örneğin %2u. N belirtilmezse, varsayılan değer 1'dir. Baştaki sıfırlara izin verilir ancak gerekli değildir. |
%w%
Nw%Ow |
Hafta içi ondalık sayı olarak (0-6), pazar 0'dır.%
Nw , okunacak en fazla karakter sayısını belirtir, örneğin %2w. N belirtilmezse, varsayılan değer 1'dir.Baştaki sıfırlara izin verilir ancak gerekli değildir. %Ow (sıfır değil harfi O) yerel ayarın alternatif gösterimini yorumlar.1 |
Yılın haftası/günü
| Belirleyici | Açıklama |
|---|---|
%j%
Nj |
Biçimlendirilen tür sürenin bir uzmanlığıysa, doldurma olmayan günlerin ondalık sayısıdır. Aksi takdirde, ondalık sayı olarak yılın günü.
Jan 1
001. Sonuç üç basamaktan azsa, (sıfır) ile 0 üç basamak arası sola doldurulur.%
Nj, okunacak en fazla karakter sayısını belirtir, örneğin %2j. N belirtilmezse, varsayılan değer 3'dür. Baştaki basamaklara izin verilir ancak gerekli değildir. |
%U%
NU%OU |
Ondalık sayı olarak yılın hafta numarası. Yılın ilk Pazar günü, haftanın 01ilk günüdür. Bu haftadan önceki aynı yılın günleri hafta 00içindedir. Sonuç tek basamaklıysa, ön eki (sıfır) olur 0 .%
NU , okunacak en fazla karakter sayısını belirtir, örneğin %2U. N belirtilmezse, varsayılan değer 2'dir.Baştaki sıfırlara izin verilir, ancak gerekli değildir. %OU (harf O, sıfır değil) yerel ayarın alternatif gösterimini ayrıştırıyor.1 |
%W%
NW%OW |
Ondalık sayı olarak yılın hafta numarası. Yılın ilk Pazartesi günü, haftanın 01ilk günüdür. Bu haftadan önceki aynı yılın günleri hafta 00içindedir.Sonuç tek basamaklıysa, ön eki (sıfır) olur 0 .%
NW , okunacak en fazla karakter sayısını belirtir, örneğin %2W. N belirtilmezse, varsayılan değer 1'dirBaştaki sıfırlara izin verilir, ancak gerekli değildir. %OW (harf O, sıfır değil) yerel ayarın alternatif gösterimini ayrıştırıyor.1 |
Günün saati
| Belirleyici | Açıklama |
|---|---|
%H%
NH%OH |
Ondalık sayı olarak saat (24 saatlik saat). Sonuç tek bir basamaksa, önüne bir 0 (sıfır) eklenir.%
NH , okunacak karakter sayısı üst sınırını belirtir; örneğin, %1H. N belirtilmezse, varsayılan değer 2'dir.Baştaki sıfırlara izin verilir ancak gerekli değildir. %OH (harf O, sıfır değil) yerel ayarın alternatif gösterimini ayrıştırıyor.1 |
%I%
NI%OI |
Ondalık sayı olarak saat (12 saatlik saat). Sonuç tek basamaklıysa, ön eki (sıfır) olur 0 .%
NI , okunacak karakter sayısı üst sınırını belirtir; örneğin, %1I. N belirtilmezse, varsayılan değer 2'dir.Baştaki sıfırlara izin verilir ancak gerekli değildir. %OI (harf O, sıfır değil) yerel ayarın alternatif gösterimini ayrıştırıyor.1 |
%M%
NM%OM |
Ondalık sayı olarak dakika. Sonuç tek basamaklıysa, ön eki (sıfır) olur 0 .%
NM , okunacak en fazla karakter sayısını belirtir, örneğin %3M. N belirtilmezse, varsayılan değer 2'dir.Baştaki sıfırlara izin verilir ancak gerekli değildir. %OM (harf O, sıfır değil) yerel ayarın alternatif gösterimini ayrıştırıyor.1 |
%S%
NS%OS |
Ondalık sayı olarak saniye. Saniye sayısı 10'dan küçükse, sonuç ön ekinde 0 (sıfır) olur. Girişin duyarlığı saniyelerle tam olarak gösterilemiyorsa, biçim sabit biçimli ondalık kayan noktalı sayıdır. İşlev 18 kesirli basamak içinde kayan nokta ondalık saniyelerini dönüştüremiyorsa mikrosaniye duyarlığı vardır. Aksi takdirde, duyarlığı girişin duyarlığıyla eşleşir. Ondalık noktasının karakteri yerel ayara göre yerelleştirilir.%
NS , okunacak en fazla karakter sayısını belirtir, örneğin %3S. N belirtilmezse, varsayılan değer 2'dir.Baştaki sıfırlara izin verilir ancak gerekli değildir. %OS (harf O, sıfır değil) yerel ayarın alternatif gösterimini ayrıştırıyor.1 |
%p |
Yerel ayar, 12 saatlik bir saatle ilişkili/PM ifadelerinin eşdeğeridir. |
%r |
Yerel ayar 12 saatlik bir saat. |
%R |
ile eşdeğerdir %H:%M. |
%T |
ile eşdeğerdir "%H:%M:%S". |
%X, %EX |
Yerel ayarın zaman gösterimi.%EX alternatif yerel ayarın saat gösterimini ayrıştırıyor.1 |
Month
| Belirleyici | Açıklama |
|---|---|
%b, %B, %h |
Yerel ayarın tam veya kısaltılmış ay adı. Değer geçerli bir ay içermiyorsa bir format_error özel durum oluşturulur.%h eşdeğeri, %b olur. |
%m, %Nm, %Om |
Ondalık sayı olarak ay. Jan 1.%
Nm , okunacak karakter sayısı üst sınırını belirtir; örneğin, %3m. N belirtilmezse, varsayılan değer 2'dir.Baştaki sıfırlara izin verilir ancak gerekli değildir. %Om (sıfır değil harfi O) yerel ayarın alternatif gösterimini yorumlar.1 |
Yıl
| Belirleyici | Açıklama |
|---|---|
%C, %NC, %EC |
Ondalık sayı olarak yüzyıl.%
NC , okunacak karakter sayısı üst sınırını belirtir; örneğin, %1N. N belirtilmezse, varsayılan değer 2'dir. Baştaki sıfırlara izin verilir ancak gerekli değildir.%EC yerel ayarın yüzyılın alternatif temsilini yorumlar. |
%y, %Ny, %Ey, %Oy |
Yılın son iki ondalık basamağı. Yüzyıl başka bir şekilde belirtilmemişse (örneğin, kullanılarak %C), aralıktaki [69, 99] değerlerin 1969 ile 1999 yılları arasında olduğu varsayılır ve aralıktaki [00, 68] değerlerin 2000 ile 2068 yılları arasında olduğu varsayılır.%
Ny , okunacak karakter sayısı üst sınırını belirtir. N belirtilmezse, varsayılan değer 2'dir.Baştaki sıfırlara izin verilir ancak gerekli değildir. %Ey ve %Oy (sıfır değil harf O) yerel ayarın alternatif gösterimini yorumlar.1 |
%Y, %NY, %EY, |
Ondalık sayı olarak yıl. Sonuç dört basamaktan azsa, sol tuş takımı (sıfır) ile 0 dört basamaklıdır.%
NY , okunacak karakter sayısı üst sınırını belirtir. N belirtilmezse, varsayılan değer 4'dür.%EY yerel ayarın alternatif tam yıl gösterimini ayrıştırıyor.1 |
ISO 8601 haftalık yıl
ISO 8601'de haftalar Pazartesi ile başlar. Yılın ilk haftası 4 Ocak'ı içermeli ve yılın ilk Perşembe gününü içermelidir.
| Belirleyici | Değiştirme |
|---|---|
%g%
Ng |
ISO hafta tabanlı yılın son iki ondalık basamağı. Sonuç tek basamaklıysa, önek olarak (sıfır) eklenir 0 .
%
Ng , okunacak karakter sayısı üst sınırını belirtir; örneğin, %1g. N belirtilmezse, varsayılan değer 2'dir |
%G%
NG |
Ondalık sayı olarak ISO hafta tabanlı yıl. Sonuç dört basamaktan azsa, sol tuş takımı (sıfır) ile 0 dört basamaklıdır.
%
NG , okunacak karakter sayısı üst sınırını belirtir; örneğin, %1G. N belirtilmezse varsayılan değer 4'dür |
%V%OV%
NV |
Ondalık sayı olarak ISO hafta tabanlı hafta numarası. Sonuç tek basamaklıysa, ön eki (sıfır) olur 0 .
%
NV , okunacak karakter sayısı üst sınırını belirtir; örneğin, %1V. N belirtilmezse, varsayılan değer 2'dir%OV (harf O, sıfır değil) yerel ayarın alternatif gösterimini ayrıştırıyor.1 |
Genel
| Belirleyici | Değiştirme |
|---|---|
%% |
% karakteriyle eşleşir |
%c%Ec |
Yerel ayarın tarih ve saat gösterimi.%Ec yerel ayarın alternatif tarih ve saat gösterimini yorumlar.1 |
%n |
Yeni satır karakteriyle eşleşir |
%t |
Sıfır veya bir boşluk karakteriyle eşleşir |
%z%Ez%Oz |
BIÇIMINDE [+|-]hh[mm]UTC'den uzaklık. Örneğin, -0430 UTC'nin 4 saat 30 dakika gerisine ve 04 UTC'nin 4 saat ilerisine başvurur.%Ez ve %Oz (sıfır değil harfi O) saat ile dakika arasında bir : ayrıştırma ve saat alanında baştaki sıfırları işleme isteğe bağlı1: [+|-]h[h][:mm]. Örneğin, -04:30 UTC'nin 4 saat 30 dakika gerisinde 4 saat, UTC'nin 4 saat öncesinde 4 saat anlamına gelir. |
%Z |
Saat dilimi kısaltması veya adı. Tek bir sözcük ayrıştırılır. Bu sözcük yalnızca temel kaynak karakter kümesinden veya , _, /-veya öğelerinden birinden +alfasayısal karakterler içerebilir. |
Türe göre bayraklar
| Sınıf | Tanımlayıcı/Bayrak |
|---|---|
day |
d, e |
duration |
j, H, I, M, S, r, R, T, p, (q, Q yalnızca biçim içindir, ayrıştırma için değildir) |
file_time |
Z, z, c, x, X, D, F, g, G, j, U, V, W, Y, y, C, b, h, B, m, d, e, a, A, u, w, H, I, M, S, r, R, T, p |
gps_time |
Z, z, c, x, X, D, F, g, G, j, U, V, W, Y, y, C, b, h, B, m, d, e, a, A, u, w, H, I, M, S, r, R, T, p |
hh_mm_ss |
H, I, M, S, r, R, T, p |
local_time |
c, x, X, D, F, g, G, j, U, V, W, Y, y, C, b, h, B, m, d, e, a, A, u, w, H, I, M, S, r, R, T, p |
local_time_format_t |
z, Z, c, x, X, D, F, Y, C, y, b, B, h, m, d, e, a, A, u, w, H, I, M, S, r, R, T, p, g, G, U, V, W |
local_info |
z, Z |
month |
b, h, B, m |
month_day |
B, d, j, e, b, h, m |
month_day_last |
B, d, j, e, b, h, m |
month_weekday |
b, B, h, m, a, A, u, w |
month_weekday_last |
b, B, h, m, a, A, u, w |
sys_info |
z, Z |
sys_time |
Z, z, c, x, X, D, F, g, G, j, U, V, W, Y, y, C, b, h, B, m, d, e, a, A, u, w, H, I, M, S, r, R, T, p |
tai |
Z, z, c, x, X, D, F, g, G, j, U, V, W, Y, y, C, b, h, B, m, d, e, a, A, u, w, H, I, M, S, r, R, T, p |
utc_time |
Z, z, c, x, X, D, F, g, G, j, U, V, W, Y, y, C, b, h, B, m, d, e, a, A, u, w, H, I, M, S, r, R, T, p |
weekday |
a, A, u, w |
weekday_indexed |
a, A, u, w |
weekday_last |
a, A, u, w |
year |
Y, y, C |
year_month |
Y, y, B, g, G, h, C, b, m |
year_month_day |
D, F, g, G, j, U, V, W, Y, y, C, b, h, B, m, d, e, a, A, u, w |
year_month_day_last |
D, F, g, G, j, U, V, W, Y, y, C, b, h, B, m, d, e, a, A, u, w |
year_month_weekday |
D, F, g, G, j, U, V, W, Y, y, C, b, h, B, m, d, e, a, A, u, w |
year_month_weekday_last |
D, F, g, G, j, U, V, W, Y, y, C, b, h, B, m, d, e, a, A, u, w |
zoned_time |
z, Z, c, x, X, D, F, Y, C, y, b, B, h, m, d, e, a, A, u, w, H, I, M, S, r, R, T, p, g, G, U, V, W |
1Uygulama şu anda strftime ile tutarlıdır, ancak O (O harfi) ve e kabul edilir, bunlar yoksayılır. Yani, "%Od" olarak "%d"yorumlanır.
get_leap_second_info
Belirtilen süre için bir leap_second_info döndürür. Bu, sağlanan sürenin artık saniye ekleme sırasında olup olmadığı hakkında bilgi sağlar. Ayrıca, 1 Ocak 1970 ile belirtilen süre arasında eklenen artık saniye sayısını sağlar. Uluslararası Yer Döndürme ve Başvuru Sistemleri Hizmeti (IERS), düzensiz olan ve yavaşlayan, atomik zaman ile izlenen zaman arasındaki farkı hesaba katmak için artık saniye ekleneceğini (61 saniyelik bir dakika ile sonuçlanır) bildirdiğinde artık saniye ekleme gerçekleşir.
Sözdizimi
template<class Duration>
leap_second_info
get_leap_second_info(const utc_time<Duration>& ut); // C++20
Parametreler
ut
Alınacak utc_time kaynakleap_second_info.
Dönüş değeri
Üyesi leap_second_info pozitif bir artık saniye eklemesi sırasında ise is_leap_second olan bir true döndürür; aksi takdirde , utfalse . Üye, elapsed dönem tarihi 1970-01-01 ile utarasındaki artık saniyelerin toplamını tutar. ise is_leap_secondtrue, tarafından ut başvuruda bulunılan artık saniye toplama elapsed eklenir.
get_tzdb
Program genelindeki saat dilimi veritabanı listesindeki ilk girdiyi alır.
Sözdizimi
const tzdb& get_tzdb(); // C++20
Dönüş değeri
çağrısıyla tzdb ilk nesneye get_tzdb_list().front()başvuru döndürür. Saat dilimi veritabanına ilk başvuruysa ve saat dilimi veritabanı başlatılamıyorsa bir runtime_error özel durum oluşturur.
Açıklamalar
Henüz başlatılmadıysa, get_tzdb ilk erişimde program genelinde saat dilimi veritabanını başlatır. Başlatma işleminden sonra veritabanı, tek bir tzdb_list başlatılan tzdb nesneyi tutan bir veritabanıdır.
get_tzdb_list
Program genelindeki tek saat dilimi veritabanını alır.
Sözdizimi
tzdb_list& get_tzdb_list(); // C++20
Dönüş değeri
Program genelindeki tzdb_list nesneye bir başvuru döndürür. Geçerli runtime_error bir tzdb_list nesneye başvuru döndüremezse bir özel durum oluşturur.
Açıklamalar
Henüz başlatılmadıysa, get_tzdb_list ilk erişimde program genelinde saat dilimi veritabanını başlatır. Başlatma işleminden sonra veritabanı, tek bir tzdb_list başlatılan tzdb nesneyi tutan bir veritabanıdır.
get_tzdb_list İşlev iş parçacığı açısından güvenlidir.
is_am
Belirtilen saatin günün ante-meridiem () bölümünde olup olmadığına ilişkin koşul.
Sözdizimi
constexpr bool is_am(const hours& h) noexcept; // C++20
Parametreler
h
24 saatlik zaman gösteriminde kaynak hours gösterimi.
Dönüş değeri
ise truedöndürür0h <= h && h <= 11h, aksi takdirde falsedöndürür.
is_pm
Belirtilen saatin günün meridiem sonrası (PM) bölümünde olup olmadığına ilişkin koşul.
Sözdizimi
constexpr bool is_pm(const hours& h) noexcept; // C++20
Parametreler
h
24 saatlik zaman gösteriminde kaynak hours gösterimi.
Dönüş değeri
ise truedöndürür12h <= h && h <= 23h, aksi takdirde falsedöndürür.
locate_zone
Saat dilimi adına göre belirtilen bir saat dilimi nesnesi alır.
Sözdizimi
const time_zone* locate_zone(string_view tz_name); // C++20
Parametreler
tz_name
Döndürülecek saat diliminin adı.
Dönüş değeri
bir çağrısı time_zonetarafından sanki öğesine get_tzdb().locate_zone(tz_name) bir işaretçi döndürür. Belirtilen saat dilimini bulamazsa veya saat dilimi veritabanına ilk başvuruysa ve saat dilimi veritabanı başlatılamıyorsa bir runtime_error özel durum oluşturur.
Açıklamalar
Henüz başlatılmadıysa, locate_zone ilk erişimde program genelinde saat dilimi veritabanını başlatır. Başlatma işleminden sonra veritabanı, tek bir tzdb_list başlatılan tzdb nesneyi tutan bir veritabanıdır.
make12
Belirtilen saati 12 saatlik zaman gösteriminde döndürür.
Sözdizimi
constexpr hours make12(const hours& h) noexcept; // C++20
Parametreler
h
24 saatlik zaman gösteriminde kaynak hours gösterimi.
Dönüş değeri
aralığındaki hdeğerinin 12 saatlik eşdeğerini [1h, 12h] döndürür. aralığında hdeğilse [0h, 23h] dönüş değeri belirtilmez.
make24
24 saatlik zaman gösteriminde belirtilen saati döndürür.
Sözdizimi
constexpr hours make24(const hours& h, bool is_pm) noexcept; // C++20
Parametreler
h
12 saatlik zaman gösteriminde kaynak hours gösterimi.
is_pm
Kaynak hours gösterimi PM (if true) veya (if false) olur.
Dönüş değeri
ise is_pmfalse, make24 bir saatini temsil ettiği varsayılarak h aralığındaki [0h, 11h]değerinin h 24 saatlik eşdeğerini döndürür. Aksi takdirde, pm saatini temsil ettiği varsayılarak h aralığındaki [12h, 23h]değerinin h 24 saatlik eşdeğerini döndürür. aralığında hdeğilse [1h, 12h] dönüş değeri belirtilmez.
reload_tzdb
Güncelleştirilmiş bilgiler varsa saat dilimi veritabanını yeniden yükler.
Sözdizimi
const tzdb& reload_tzdb();
Dönüş değeri
Saat dilimi veritabanı güncelleştirmesini (varsa) yaptıktan sonra, reload_tzdb ilk nesneye tzdb yapılan bir çağrı gibi bir başvuru get_tzdb_list().front()döndürür. Geçerli runtime_error bir tzdb nesneye başvuru döndüremezse bir özel durum oluşturur.
Açıklamalar
Yerel saat dilimi veritabanı, program veritabanına ilk kez eriştiğinde sağlanan veritabanıdır( örneğin, çağrısıylacurrent_zone). Program çalışırken uygulama saat dilimi veritabanını güncelleştirebilir. Program işlevi çağırmadığı reload_tzdb sürece güncelleştirme programı hiçbir şekilde etkilemez. Güncelleştirilme olasılığı olan saat dilimi veritabanı, uzak saat dilimi veritabanı olarak adlandırılır.
işlevi hem reload_tzdb yerel saat dilimi veritabanının hem de uzak saat dilimi veritabanının sürümünü denetler. Yerel ve uzak veritabanlarının sürümleri aynıysa hiçbir değişiklik yapmaz. Aksi takdirde, uzak veritabanı tarafından tzdb_listerişilen öğesinin get_tzdb_list önüne iletilir. Güncelleştirme işaretçileri, başvuruları veya yineleyicileri geçersiz kılmaz.
reload_tzdb işlevi ve get_tzdb_list().front()çağrıları get_tzdb_list().erase_after() için iş parçacığı açısından güvenlidir.
remote_version
En son uzak veritabanı sürümünü içeren bir dize alır.
Sözdizimi
string remote_version();
Dönüş değeri
En son uzak veritabanı sürümünü içeren bir string döndürür.
round(duration)
Belirtilen duration değeri hedef türdeki en yakın temsil edilebilir duration değere yuvarlar.
Sözdizimi
template<class ToDuration, class Rep, class Period>
constexpr ToDuration
round(const duration<Rep, Period>& d); // C++17
Parametreler
ToDuration
Hedef duration türü. nerede duration olduğu konusunda bir uzmanlaşma treat_as_floating_point_v<typename ToDuration::rep> olarak kısıtlanmış.false
Rep
Kaynağın durationdiç gösteriminin türü.
Period
Bir std::ratio saniyenin kaynak Rep türüne (saniye başına Rep) oranını temsil eden bir tür.
d
Kaynak duration nesne.
Dönüş değeri
parametresiyle durationToDurationtemsil edilebilen en d yakın değeri döndürür. Bağlar eşit değere, yani değerinin olduğu tdeğere t % 2 == 0 gider.
Açıklamalar
roundtürü bir örneği olmadığı ve ToDuration tam sayı gösterimine sahip olmadığı sürece duration aşırı yükleme çözümlemesine ToDurationkatılmaz.
round(time_point)
Hedefte duration belirtilen zaman noktasına temsil edilebilen en yakın zaman noktasını döndürür.
template<class ToDuration, class Clock, class Duration>
constexpr time_point<Clock, ToDuration>
round(const time_point<Clock, Duration>& tp);
Parametreler
ToDuration
Hedef duration türü. nerede duration olduğu konusunda bir uzmanlaşma treat_as_floating_point_v<typename ToDuration::rep> olarak kısıtlanmış.false
Clock
Sonucun ortak saat türü ve kaynak parametresi tp.
Duration
duration türü.tp
tp
Kaynak time_point nesne.
Dönüş değeri
ile temsil ToDurationtpedilebilen en yakın zaman noktasını döndürür. Bağlar eşit değere, yani değerinin olduğu tdeğere t % 2 == 0 gider. Etkili bir şekilde, time_point<Clock, ToDuration>(round<ToDuration>(tp.time_since_epoch()));.
Açıklamalar
round türü bir örneği olmadığı sürece ToDuration aşırı yükleme çözümlemesine durationkatılmaz.
time_point_cast
time_point Bir nesneyi farklı time_point türde bir duration nesneye dönüştürür.
Sözdizimi
template <class ToDuration, class Clock, class Duration>
time_point<Clock, ToDuration>
time_point_cast(const time_point<Clock, Duration>& tp); // C++11
Parametreler
ToDuration
Hedef duration türü. uzmanlık alanı olarak durationkısıtlanmış.
Clock
Sonucun ortak saat türü ve kaynak parametresi tp.
Duration
duration türü.tp
tp
Türüne time_point sahip ToDuration bir nesneye atama.
Dönüş değeri
Türü olan bir time_pointToDuration nesne döndürür. Etkili bir şekilde, time_point<Clock, ToDuration>(duration_cast<ToDuration>(t.time_since_epoch()));.
Açıklamalar
uzmanlığı olmadığı ToDurationsüreceduration, bu işlev aşırı yükleme çözümlemesine katılmaz.
Ayrıca bkz.
<chrono>
chrono Hazır
chrono Işleç
duration sınıfı
time_point sınıfı
time_zone sınıfı