- chrono[meta header]
- std::chrono_literals[meta namespace]
- function[meta id-type]
- cpp14[meta cpp]
namespace std {
inline namespace literals {
inline namespace chrono_literals {
constexpr chrono::hours
operator "" h(unsigned long long x); // (1)
constexpr chrono::duration<unspecified, ratio<3600,1>>
operator "" h(long double x); // (2)
}}
namespace chrono {
using namespace literals::chrono_literals;
} // namespace chrono
} // namespace std
- ratio[link /reference/ratio/ratio.md]
- unspecified[italic]
時単位の値を表すduration
クラスのリテラル。
- (1) : 整数型の時リテラル
- (2) : 浮動小数点型の時リテラル
- (1) :
chrono::hours(x)
- (2) :
chrono::duration<unspecified, ratio<3600,1>>(x)
#include <iostream>
#include <chrono>
int main()
{
using namespace std::literals::chrono_literals;
auto hours_i = 3h; // 整数型の3時間
auto hours_f = 3.1h; // 浮動小数点型の3.1時間
std::cout << hours_i.count() << std::endl;
std::cout << hours_f.count() << std::endl;
}
- 3h[color ff0000]
- 3.1h[color ff0000]
- count()[link count.md]
3
3.1
- C++14
- Clang: 3.4
- GCC: 4.9.0
- ICC: ??
- Visual C++: 2015