|
NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
|
日期类 更多...
#include <datetime.hpp>
Public 类型 | |
| using | date_type = int32_t |
| 日期分量类型 | |
Public 成员函数 | |
| constexpr | date () noexcept=default |
| 默认构造函数,创建1970-01-01 | |
| constexpr | date (date_type year, const date_type month, const date_type day) noexcept |
| 构造函数 | |
| NEFORCE_NODISCARD constexpr date_type | year () const noexcept |
| 获取年份 | |
| NEFORCE_NODISCARD constexpr date_type | month () const noexcept |
| 获取月份 | |
| NEFORCE_NODISCARD constexpr date_type | day () const noexcept |
| 获取日期 | |
| constexpr bool | is_valid () const noexcept |
| 检查日期是否有效 | |
| NEFORCE_NODISCARD constexpr date_type | days_of_week () const noexcept |
| 获取星期几 | |
| NEFORCE_NODISCARD constexpr date_type | days_of_year () const noexcept |
| 获取一年中的第几天 | |
| constexpr int64_t | to_julian_day () const noexcept |
| 转换为儒略日 | |
| constexpr void | clear () noexcept |
| 重置为纪元起始日期 | |
| constexpr bool | operator== (const date &rhs) const noexcept |
| 相等比较 | |
| constexpr bool | operator< (const date &rhs) const noexcept |
| 小于比较 | |
| constexpr date & | operator+= (const date_type day) noexcept |
| 日期加天数 | |
| constexpr date & | operator-= (const date_type day) noexcept |
| 日期减天数 | |
| constexpr date | operator+ (const date_type day) const noexcept |
| 日期加天数 | |
| constexpr date | operator- (const date_type day) const noexcept |
| 日期减天数 | |
| constexpr date & | operator++ () |
| 前置递增(加1天) | |
| constexpr date | operator++ (int) |
| 后置递增(加1天) | |
| constexpr date_type | operator- (const date &other) const noexcept |
| 日期差(天数) | |
| NEFORCE_NODISCARD constexpr size_t | to_hash () const noexcept |
| 计算哈希值 | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 string | to_string () const |
| 转换为字符串 | |
| constexpr void | swap (date &other) noexcept |
| 交换两个日期 | |
| Public 成员函数 继承自 iobject< date > | |
| NEFORCE_CONSTEXPR20 bool | try_parse (const string_view str) noexcept |
| 尝试从字符串解析对象 | |
| Public 成员函数 继承自 istringify< date > | |
| NEFORCE_NODISCARD NEFORCE_CONSTEXPR20 string | to_string () const |
| 转换为字符串 | |
| Public 成员函数 继承自 icomparable< date > | |
| NEFORCE_NODISCARD constexpr bool | operator== (const date &rhs) const noexcept(noexcept(derived()==rhs)) |
| 相等比较运算符 | |
| NEFORCE_NODISCARD constexpr bool | operator!= (const date &rhs) const noexcept(noexcept(!(*this==rhs))) |
| 不等比较运算符 | |
| NEFORCE_NODISCARD constexpr bool | operator< (const date &rhs) const noexcept(noexcept(derived()< rhs)) |
| 小于比较运算符 | |
| NEFORCE_NODISCARD constexpr bool | operator> (const date &rhs) const noexcept(noexcept(rhs< derived())) |
| 大于比较运算符 | |
| NEFORCE_NODISCARD constexpr bool | operator<= (const date &rhs) const noexcept(noexcept(!(derived() > rhs))) |
| 小于等于比较运算符 | |
| NEFORCE_NODISCARD constexpr bool | operator>= (const date &rhs) const noexcept(noexcept(!(derived()< rhs))) |
| 大于等于比较运算符 | |
| Public 成员函数 继承自 ihashable< date > | |
| NEFORCE_NODISCARD constexpr size_t | to_hash () const noexcept(noexcept(derived().to_hash())) |
| 获取对象的哈希值 | |
静态 Public 成员函数 | |
| static constexpr bool | is_valid (date_type year, date_type month, date_type day) noexcept |
| 检查日期是否有效 | |
| static constexpr date | epoch () noexcept |
| 获取纪元起始日期(1970-01-01) | |
| static constexpr bool | is_leap_year (const date_type year) noexcept |
| 检查是否为闰年 | |
| static constexpr date_type | days_of_month (const date_type year, const date_type month) noexcept |
| 获取指定年月的天数 | |
| static constexpr date | from_julian_day (const int64_t julian_day) noexcept |
| 从儒略日转换 | |
| NEFORCE_NODISCARD static constexpr date | parse (const string_view view) |
| 从字符串解析 | |
| 静态 Public 成员函数 继承自 iobject< date > | |
| static NEFORCE_NODISCARD constexpr date | parse (const string_view str) |
| 从字符串解析对象 | |
静态 Public 属性 | |
| static constexpr int32_t | month_days [12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31} |
| 每月天数表(非闰年) | |
|
inlineexplicitconstexprnoexcept |
构造函数
| year | 年份 |
| month | 月份 |
| day | 日期 |
如果日期无效,将保持默认值1970-01-01。
在文件 datetime.hpp 第 122 行定义.
引用了 date(), day(), is_valid(), month() , 以及 year().
|
inlineconstexprnoexcept |
获取日期
在文件 datetime.hpp 第 151 行定义.
被这些函数引用 date(), days_of_month(), from_julian_day(), is_valid(), operator+(), operator+=(), operator-(), operator-=(), parse(), to_hash() , 以及 to_string().
|
inlinestaticconstexprnoexcept |
获取指定年月的天数
| year | 年份 |
| month | 月份 |
在文件 datetime.hpp 第 212 行定义.
引用了 day(), is_leap_year(), month(), month_days , 以及 year().
被这些函数引用 days_of_year(), is_valid(), operator+=() , 以及 operator-=().
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlinestaticconstexprnoexcept |
从儒略日转换
| julian_day | 儒略日数 |
在文件 datetime.hpp 第 248 行定义.
引用了 date(), day(), month() , 以及 year().
被这些函数引用 operator+=().
|
inlinestaticconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlinestaticconstexprnoexcept |
检查日期是否有效
| year | 年份 |
| month | 月份 |
| day | 日期 |
在文件 datetime.hpp 第 160 行定义.
引用了 day(), days_of_month(), month() , 以及 year().
被这些函数引用 date().
|
inlineconstexprnoexcept |
获取月份
在文件 datetime.hpp 第 145 行定义.
被这些函数引用 date(), days_of_month(), from_julian_day(), is_valid(), parse(), to_hash(), to_julian_day() , 以及 to_string().
日期加天数
| day | 要加的天数 |
在文件 datetime.hpp 第 300 行定义.
引用了 date(), day(), days_of_month(), from_julian_day() , 以及 to_julian_day().
|
inlinestaticconstexpr |
从字符串解析
| view | 格式为 YYYY-MM-DD 的字符串 |
| value_exception | 格式错误时抛出 |
在文件 datetime.hpp 第 426 行定义.
引用了 date(), day(), month(), basic_string_view< CharT, Traits >::size(), basic_string_view< CharT, Traits >::substr() , 以及 year().
被这些函数引用 datetime::parse(), datetime::parse_ISO() , 以及 datetime::parse_ISO_UTC().
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inline |
|
inlineconstexprnoexcept |
获取年份
在文件 datetime.hpp 第 139 行定义.
引用了 year().
被这些函数引用 date(), days_of_month(), from_julian_day(), is_leap_year(), is_valid(), parse(), to_hash(), to_julian_day(), to_string() , 以及 year().