構成 |
struct | NSSafeCalculation::impl::overflow_cast_impl< T, U, TIsSigned, UIsSigned, TIsBigger > |
struct | NSSafeCalculation::impl::overflow_cast_impl< T, U, false, false, false > |
struct | NSSafeCalculation::impl::overflow_cast_impl< T, U, false, true, false > |
struct | NSSafeCalculation::impl::overflow_cast_impl< T, U, true, false, false > |
struct | NSSafeCalculation::impl::overflow_cast_impl< T, U, true, true, false > |
struct | NSSafeCalculation::impl::no_overflow_cast_impl< T, U, TIsSigned, UIsSigned, TIsBigger > |
struct | NSSafeCalculation::impl::no_overflow_cast_impl< T, U, false, false, false > |
struct | NSSafeCalculation::impl::no_overflow_cast_impl< T, U, false, true, false > |
struct | NSSafeCalculation::impl::no_overflow_cast_impl< T, U, true, false, false > |
struct | NSSafeCalculation::impl::no_overflow_cast_impl< T, U, true, true, false > |
struct | NSSafeCalculation::overflow_static_cast< T > |
| オーバーフローすると例外を発生させるstatic_cast. [詳細]
|
struct | NSSafeCalculation::no_overflow_static_cast< T > |
| オーバーフローするとキャスト先の型の最大または最小値になるstatic_cast. [詳細]
|
ネームスペース |
namespace | NSSafeCalculation |
namespace | NSSafeCalculation::impl |
関数 |
template<typename T > |
T | NSSafeCalculation::OverflowAdd (const T &lhs, const T &rhs) throw (std::overflow_error) |
template<typename T > |
T | NSSafeCalculation::OverflowSub (const T &lhs, const T &rhs) throw (std::overflow_error) |
template<typename T > |
T | NSSafeCalculation::OverflowMul (const T &lhs, const T &rhs) throw (std::overflow_error) |
template<typename T > |
T | NSSafeCalculation::OverflowDiv (const T &lhs, const T &rhs) throw (std::overflow_error, std::logic_error) |
template<typename T > |
T | NSSafeCalculation::NoOverflowAdd (const T &lhs, const T &rhs) throw () |
template<typename T > |
T | NSSafeCalculation::NoOverflowSub (const T &lhs, const T &rhs) throw () |
template<typename T > |
T | NSSafeCalculation::NoOverflowMul (const T &lhs, const T &rhs) throw () |
template<typename T > |
T | NSSafeCalculation::NoOverflowDiv (const T &lhs, const T &rhs) throw (std::logic_error) |
安全な整数演算を提供する.