NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
time类 参考

时间类 更多...

#include <datetime.hpp>

类 time 继承关系图:
[图例]

Public 类型

using time_type = int32_t
 时间分量类型

Public 成员函数

constexpr time () noexcept=default
 默认构造函数,创建00:00:00
NEFORCE_CONSTEXPR20 ~time ()=default
 析构函数
constexpr time (const time_type hour, const time_type minute, const time_type second) noexcept
 构造函数
NEFORCE_NODISCARD constexpr time_type hours () const noexcept
 获取小时
NEFORCE_NODISCARD constexpr time_type minutes () const noexcept
 获取分钟
NEFORCE_NODISCARD constexpr time_type seconds () const noexcept
 获取秒
constexpr bool is_valid () const noexcept
 检查时间是否有效
constexpr void clear () noexcept
 重置为00:00:00
NEFORCE_NODISCARD constexpr time_type to_seconds () const noexcept
 转换为总秒数
constexpr bool operator== (const time &other) const noexcept
 相等比较
constexpr bool operator< (const time &other) const noexcept
 小于比较
constexpr timeoperator+= (const time_type seconds)
 时间加秒数
constexpr timeoperator-= (const time_type seconds) noexcept
 时间减秒数
constexpr time operator+ (const time_type seconds) const noexcept
 时间加秒数
constexpr time operator- (const time_type seconds) const noexcept
 时间减秒数
constexpr timeoperator++ ()
 前置递增(加1秒)
constexpr time operator++ (int)
 后置递增(加1秒)
constexpr timeoperator-- ()
 前置递减(减1秒)
constexpr time operator-- (int)
 后置递减(减1秒)
constexpr time_type operator- (const time &other) const noexcept
 时间差(秒数)
NEFORCE_NODISCARD constexpr size_t to_hash () const noexcept
 计算哈希值
NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 string to_string () const
 转换为字符串
constexpr void swap (time &other) noexcept
 交换两个时间
Public 成员函数 继承自 iobject< time >
NEFORCE_CONSTEXPR20 bool try_parse (const string_view str) noexcept
 尝试从字符串解析对象
Public 成员函数 继承自 istringify< time >
NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 string to_string () const
 转换为字符串
Public 成员函数 继承自 icomparable< time >
NEFORCE_NODISCARD constexpr bool operator== (const time &rhs) const noexcept(noexcept(derived()==rhs))
 相等比较运算符
NEFORCE_NODISCARD constexpr bool operator!= (const time &rhs) const noexcept(noexcept(!(*this==rhs)))
 不等比较运算符
NEFORCE_NODISCARD constexpr bool operator< (const time &rhs) const noexcept(noexcept(derived()< rhs))
 小于比较运算符
NEFORCE_NODISCARD constexpr bool operator> (const time &rhs) const noexcept(noexcept(rhs< derived()))
 大于比较运算符
NEFORCE_NODISCARD constexpr bool operator<= (const time &rhs) const noexcept(noexcept(!(derived() > rhs)))
 小于等于比较运算符
NEFORCE_NODISCARD constexpr bool operator>= (const time &rhs) const noexcept(noexcept(!(derived()< rhs)))
 大于等于比较运算符
Public 成员函数 继承自 ihashable< time >
NEFORCE_NODISCARD constexpr size_t to_hash () const noexcept(noexcept(derived().to_hash()))
 获取对象的哈希值

静态 Public 成员函数

static constexpr bool is_valid (time_type hour, time_type minute, time_type second) noexcept
 检查时间是否有效
static NEFORCE_NODISCARD constexpr time parse (const string_view view)
 从字符串解析
静态 Public 成员函数 继承自 iobject< time >
static NEFORCE_NODISCARD constexpr time parse (const string_view str)
 从字符串解析对象

详细描述

时间类

表示一天中的时间(时、分、秒),支持时间间隔计算。

在文件 datetime.hpp454 行定义.

构造及析构函数说明

◆ time()

time::time ( const time_type hour,
const time_type minute,
const time_type second )
inlineexplicitconstexprnoexcept

构造函数

参数
hour小时
minute分钟
second

在文件 datetime.hpp480 行定义.

引用了 is_valid() , 以及 time().

成员函数说明

◆ hours()

NEFORCE_NODISCARD constexpr time_type time::hours ( ) const
inlineconstexprnoexcept

获取小时

返回
小时

在文件 datetime.hpp497 行定义.

引用了 hours().

被这些函数引用 hours().

◆ is_valid() [1/2]

bool time::is_valid ( ) const
inlineconstexprnoexcept

检查时间是否有效

返回
是否有效

在文件 datetime.hpp526 行定义.

引用了 is_valid().

被这些函数引用 is_valid().

◆ is_valid() [2/2]

constexpr bool time::is_valid ( time_type hour,
time_type minute,
time_type second )
inlinestaticconstexprnoexcept

检查时间是否有效

参数
hour小时
minute分钟
second
返回
是否有效

在文件 datetime.hpp518 行定义.

被这些函数引用 time().

◆ minutes()

NEFORCE_NODISCARD constexpr time_type time::minutes ( ) const
inlineconstexprnoexcept

获取分钟

返回
分钟

在文件 datetime.hpp503 行定义.

◆ operator+()

time time::operator+ ( const time_type seconds) const
inlineconstexprnoexcept

时间加秒数

参数
seconds秒数
返回
新时间

在文件 datetime.hpp621 行定义.

引用了 seconds() , 以及 time().

◆ operator+=()

time & time::operator+= ( const time_type seconds)
inlineconstexpr

时间加秒数

参数
seconds要加的秒数
返回
自身引用

在文件 datetime.hpp575 行定义.

引用了 seconds() , 以及 time().

◆ operator-() [1/2]

time_type time::operator- ( const time & other) const
inlineconstexprnoexcept

时间差(秒数)

参数
other另一个时间
返回
相差的秒数

在文件 datetime.hpp671 行定义.

引用了 time().

◆ operator-() [2/2]

time time::operator- ( const time_type seconds) const
inlineconstexprnoexcept

时间减秒数

参数
seconds秒数
返回
新时间

在文件 datetime.hpp632 行定义.

引用了 seconds() , 以及 time().

◆ operator-=()

time & time::operator-= ( const time_type seconds)
inlineconstexprnoexcept

时间减秒数

参数
seconds要减的秒数
返回
自身引用

在文件 datetime.hpp599 行定义.

引用了 seconds(), time() , 以及 to_seconds().

◆ parse()

NEFORCE_NODISCARD constexpr time time::parse ( const string_view view)
inlinestaticconstexpr

从字符串解析

参数
view格式为 HH:MM:SS 的字符串
返回
解析得到的时间
异常
value_exception格式错误时抛出

在文件 datetime.hpp701 行定义.

引用了 basic_string_view< CharT, Traits >::size(), basic_string_view< CharT, Traits >::substr() , 以及 time().

被这些函数引用 datetime::parse(), datetime::parse_ISO() , 以及 datetime::parse_ISO_UTC().

◆ seconds()

NEFORCE_NODISCARD constexpr time_type time::seconds ( ) const
inlineconstexprnoexcept

获取秒

返回

在文件 datetime.hpp509 行定义.

被这些函数引用 operator+(), operator+=(), operator-() , 以及 operator-=().

◆ swap()

void time::swap ( time & other)
inlineconstexprnoexcept

交换两个时间

参数
other另一个时间

在文件 datetime.hpp715 行定义.

引用了 swap() , 以及 time().

◆ to_hash()

NEFORCE_NODISCARD constexpr size_t time::to_hash ( ) const
inlineconstexprnoexcept

计算哈希值

返回
哈希值

在文件 datetime.hpp682 行定义.

◆ to_seconds()

NEFORCE_NODISCARD constexpr time_type time::to_seconds ( ) const
inlineconstexprnoexcept

转换为总秒数

返回
从00:00:00开始的秒数

在文件 datetime.hpp541 行定义.

被这些函数引用 operator-=().

◆ to_string()

NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 string time::to_string ( ) const
inline

转换为字符串

返回
格式为 HH:MM:SS 的字符串

在文件 datetime.hpp691 行定义.

引用了 format().


该类的文档由以下文件生成: