构造 SafeInt 对象。
SafeInt() throw
SafeInt (
const T& i
) throw ()
SafeInt (
bool b
) throw ()
template <typename U>
SafeInt (
const SafeInt <U, E>& u
)
I template <typename U>
SafeInt (
const U& i
)
参数
[in] i
新的对象SafeInt值。 这必须是类型 T 或 U ,根据构造函数。[in] b
新对象SafeInt的初始布尔值。[in] u
U类型的SafeInt。 新 SafeInt 对象将包含和 u相同的值,但是,其类型为 T。U
存储在SafeInt所述数据的类型。 它可以是字符、整数、布尔类型。 如果是整数类型,它可以带符号或无符号和在 8 位和 64 之间。
备注
有关此类型的模板类型T 和 E的更多信息,请参见 SafeInt 类。
构造函数,i 或 u的输入参数,必须是布尔值、字符、整数类型。 如果是其他类型参数,SafeInt 类调用 static_assert 指示无效的输入参数。
自动使用模板类型 U 的构造函数以转换输入参数为 T指定的类型。 SafeInt 类被转换数据,而无任何丢失数据。 如果它不能转换数据类型没有 T 数据丢失,E 报告其移到错误处理程序。
如果创建的布尔型参数的 SafeInt,需要直接初始化值。 使用代码 SafeInt<bool> sb;,不可以构造 SafeInt。 将产生编译错误。
要求
头文件: safeint.h
命名空间: msl::utilities