|
NexusForce 1.0.0
A rigorously engineered full-stack C++ backend library.
|
128位有符号整数包装类 更多...
#include <packages.hpp>
Public 成员函数 | |
| constexpr | integer128 (const value_type value) noexcept |
| 从基础类型构造 | |
| constexpr integer128 & | operator= (const value_type value) noexcept |
| 从基础类型赋值 | |
| constexpr | integer128 (const string &str, const int base=10) |
| 从字符串构造 | |
| constexpr | integer128 (const string_view str, const int base=10) |
| 从字符串视图构造 | |
| constexpr string | to_string () const |
| 将当前对象转换为字符串 | |
| constexpr integer128 & | operator<<= (const uint32_t shift) noexcept |
| 重写左移赋值以支持128位移位 | |
| constexpr integer128 & | operator>>= (const uint32_t shift) noexcept |
| 重写右移赋值以支持128位移位(算术右移) | |
| Public 成员函数 继承自 neforce::iobject< integer128 > | |
| constexpr bool | try_parse (const string_view str) noexcept |
| 尝试从字符串解析对象 | |
| Public 成员函数 继承自 neforce::istringify< integer128 > | |
| constexpr string | to_string () const |
| 转换为字符串 | |
| Public 成员函数 继承自 neforce::ipackage< integer128, int128_t > | |
| constexpr | ipackage (package_type value) noexcept |
| 构造函数 | |
| constexpr | operator package_type () const noexcept |
| 类型转换操作符 | |
| constexpr package_type | value () const noexcept |
| 获取数值 | |
| constexpr int64_t | to_int64 () const noexcept |
| 转换为64位整数 | |
| constexpr size_t | to_hash () const noexcept |
| 计算哈希值 | |
| constexpr void | swap (integer128 &other) noexcept |
| 交换内容 | |
| constexpr bool | equal_to (const integer128 &other) const noexcept |
| 相等比较操作符 | |
| constexpr bool | less_than (const integer128 &other) const noexcept |
| 小于比较操作符 | |
| constexpr integer128 & | operator+= (const integer128 &other) noexcept |
| 加法赋值操作符 | |
| constexpr integer128 & | operator-= (const integer128 &other) noexcept |
| 减法赋值操作符 | |
| constexpr integer128 & | operator*= (const integer128 &other) noexcept |
| 乘法赋值操作符 | |
| constexpr integer128 & | operator/= (const integer128 &other) |
| 除法赋值操作符 | |
| constexpr integer128 & | operator%= (const integer128 &other) |
| 取模赋值操作符 | |
| constexpr integer128 & | operator++ () noexcept |
| 前置递增操作符 | |
| constexpr integer128 & | operator-- () noexcept |
| 前置递减操作符 | |
| constexpr integer128 | operator~ () const noexcept |
| 按位取反操作符 | |
| constexpr integer128 & | operator&= (const integer128 &other) noexcept |
| 按位与赋值操作符 | |
| constexpr integer128 & | operator|= (const integer128 &other) noexcept |
| 按位或赋值操作符 | |
| constexpr integer128 & | operator^= (const integer128 &other) noexcept |
| 按位异或赋值操作符 | |
| constexpr integer128 & | operator<<= (const uint32_t shift) |
| 左移赋值操作符 | |
| constexpr integer128 & | operator>>= (const uint32_t shift) |
| 右移赋值操作符 | |
| Public 成员函数 继承自 neforce::icomparable< T > | |
| constexpr bool | operator== (const T &rhs) const noexcept(noexcept(derived().equal_to(rhs))) |
| 相等比较运算符 | |
| constexpr bool | operator!= (const T &rhs) const noexcept(noexcept(!(derived().equal_to(rhs)))) |
| 不等比较运算符 | |
| constexpr bool | operator< (const T &rhs) const noexcept(noexcept(derived().less_than(rhs))) |
| 小于比较运算符 | |
| constexpr bool | operator> (const T &rhs) const noexcept(noexcept(rhs.less_than(derived()))) |
| 大于比较运算符 | |
| constexpr bool | operator<= (const T &rhs) const noexcept(noexcept(!(rhs.less_than(derived())))) |
| 小于等于比较运算符 | |
| constexpr bool | operator>= (const T &rhs) const noexcept(noexcept(!(derived().less_than(rhs)))) |
| 大于等于比较运算符 | |
| Public 成员函数 继承自 neforce::ihashable< T > | |
| constexpr size_t | to_ihash () const noexcept(noexcept(derived().to_hash())) |
| 获取对象的哈希值 | |
| Public 成员函数 继承自 neforce::iarithmetic< T > | |
| constexpr T | operator+ (const T &other) const noexcept(noexcept(const_cast< T & >(derived()).operator+=(other))) |
| 加法运算符 | |
| constexpr T | operator- (const T &other) const noexcept(noexcept(const_cast< T & >(derived()).operator-=(other))) |
| 减法运算符 | |
| constexpr T | operator* (const T &other) const noexcept(noexcept(const_cast< T & >(derived()).operator*=(other))) |
| 乘法运算符 | |
| constexpr T | operator/ (const T &other) const noexcept(noexcept(const_cast< T & >(derived()).operator/=(other))) |
| 除法运算符 | |
| constexpr T | operator% (const T &other) const noexcept(noexcept(const_cast< T & >(derived()).operator%=(other))) |
| 取模运算符 | |
| constexpr T & | operator+= (const T &other) noexcept(noexcept(derived().operator+=(other))) |
| 加法赋值运算符 | |
| constexpr T & | operator-= (const T &other) noexcept(noexcept(derived().operator-=(other))) |
| 减法赋值运算符 | |
| constexpr T & | operator*= (const T &other) noexcept(noexcept(derived().operator*=(other))) |
| 乘法赋值运算符 | |
| constexpr T & | operator/= (const T &other) |
| 除法赋值运算符 | |
| constexpr T & | operator%= (const T &other) |
| 取模赋值运算符 | |
| constexpr T & | operator++ () noexcept(noexcept(derived().operator++())) |
| 前置自增运算符 | |
| constexpr T | operator++ (int) noexcept(noexcept(derived().operator++())) |
| 后置自增运算符 | |
| constexpr T & | operator-- () noexcept(noexcept(derived().operator--())) |
| 前置自减运算符 | |
| constexpr T | operator-- (int) noexcept(noexcept(derived().operator--())) |
| 后置自减运算符 | |
| Public 成员函数 继承自 neforce::ibinary< T > | |
| constexpr T | operator& (const T &other) const noexcept(noexcept(const_cast< T & >(derived()).operator&=(other))) |
| 按位与运算符 | |
| constexpr T | operator| (const T &other) const noexcept(noexcept(const_cast< T & >(derived()).operator|=(other))) |
| 按位或运算符 | |
| constexpr T | operator^ (const T &other) const noexcept(noexcept(const_cast< T & >(derived()).operator^=(other))) |
| 按位异或运算符 | |
| constexpr T | operator~ () const noexcept(noexcept(derived().operator~())) |
| 按位取反运算符 | |
| constexpr T | operator<< (const uint32_t shift) const |
| 左移运算符 | |
| constexpr T | operator>> (const uint32_t shift) const |
| 右移运算符 | |
| constexpr T & | operator&= (const T &other) noexcept(noexcept(derived().operator&=(other))) |
| 按位与赋值运算符 | |
| constexpr T & | operator|= (const T &other) noexcept(noexcept(derived().operator|=(other))) |
| 按位或赋值运算符 | |
| constexpr T & | operator^= (const T &other) noexcept(noexcept(derived().operator^=(other))) |
| 按位异或赋值运算符 | |
| constexpr T & | operator<<= (const uint32_t shift) |
| 左移赋值运算符 | |
| constexpr T & | operator>>= (const uint32_t shift) |
| 右移赋值运算符 | |
静态 Public 成员函数 | |
| static constexpr string | to_string (const value_type value) |
| 将基础类型值转换为字符串 | |
| static constexpr integer128 | parse (const string_view str) |
| 从字符串解析 | |
| 静态 Public 成员函数 继承自 neforce::iobject< integer128 > | |
| static constexpr integer128 | parse (const string_view str) |
| 从字符串解析对象 | |
| 静态 Public 成员函数 继承自 neforce::ipackage< integer128, int128_t > | |
| static constexpr size_t | bytes () noexcept |
| 获取类型字节大小 | |
| static constexpr size_t | bits () noexcept |
| 获取类型位大小 | |
额外继承的成员函数 | |
| Public 类型 继承自 neforce::ipackage< integer128, int128_t > | |
| using | package_type |
| 包装类型 | |
| Protected 成员函数 继承自 neforce::ipackage< integer128, int128_t > | |
| constexpr | ~ipackage ()=default |
| 受保护的析构函数 | |
| Protected 属性 继承自 neforce::ipackage< integer128, int128_t > | |
| package_type | value_ |
| 存储的数值 | |
|
inlineexplicitconstexprnoexcept |
|
inlineexplicitconstexpr |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
从基础类型赋值
| value | 128位有符号整数值 |
在文件 packages.hpp 第 386 行定义.
引用了 neforce::ipackage< integer128, int128_t >::value() , 以及 neforce::ipackage< integer128, int128_t >::value_.
|
inlineconstexprnoexcept |
|
inlinestaticnodiscardconstexpr |
从字符串解析
| str | 字符串视图 |
| typecast_exception | 字符串格式无效时抛出 |
在文件 packages.hpp 第 431 行定义.
引用了 neforce::to_int128().
|
inlinenodiscardconstexpr |
|
inlinestaticnodiscardconstexpr |