Boost C++ 库

...世界上最受推崇和专业设计的 C++ 库项目之一。 Herb SutterAndrei Alexandrescu, C++ 编码标准

Library Documentation Index

安全数值

Next

安全数值

Robert Ramey

目录

介绍
问题
解决方案
工作原理
附加功能
要求
范围
教程和激励示例
算术表达式可能产生不正确的结果
算术运算可能静默溢出
无符号整数的算术运算可能产生不正确的结果
隐式转换可能导致错误结果
混合数据类型可能产生细微错误
数组索引值可能超出数组限制
输入值的检查可能容易被忽略
无法从算术错误中恢复
编译时算术运算并非总是正确
契约式编程太慢
消除运行时惩罚
使用 safe_range 和 safe_literal
使用自动类型提升
混合方法
案例研究
与其他库的组合
安全关键嵌入式控制器
背景
类型要求
Numeric<T>
Integer<T>
PromotionPolicy<PP>
ExceptionPolicy<EP>
类型
safe<T, PP, EP>
safe_signed_range<MIN, MAX, PP, EP> 和 safe_unsigned_range<MIN, MAX, PP, EP>
safe_signed_literal<Value, PP , EP> 和 safe_unsigned_literal<Value, PP, EP>
异常
exception_policy<AE, IDB, UB, UV>
提升策略
异常安全
库实现
checked_result<R>
检查的算术运算
interval<R>
safe_compare<T, U>
性能测试
理由和常见问题
待解决问题
safe_base 仅适用于标量类型
其他待解决问题
鸣谢
发布日志
参考书目

最后修订: $Date


Next