目前,Rust 中尚未实现编译时范围类型。在internals.rust-lang.org上有一个讨论和几个开放的 GitHub 问题:整数的范围类型(或细化类型?)#671和数值约束类型#1621。有一个实验包 ranged_integers,它是范围整数的原型。
对于运行时实现,您可以定义您的类型,例如,
struct RangedInt<const MIN: int, const MAX: int>(int);
Run Code Online (Sandbox Code Playgroud)
并在操作员的实现中添加检查。
| 归档时间: |
|
| 查看次数: |
1079 次 |
| 最近记录: |