在了解了const泛型并偶然发现了typenum个 crate 之后,我被它们似乎有一个重叠的目的-使用数值作为类型-这一事实搞糊涂了.

唯一的区别是typenum提供了更多的灵活性,比如对数字类型的算术运算,但不那么直观和符合人体工程学的用法.在常量泛型出现之前,typenum就已经存在了,而typenum中的许多特性似乎正在讨论是否要添加到常量泛型语法中.

I couldn't find anything explaining the relation between these two, but all the things above is leading me to the conclusion:
"typenum is a bandage fix to the current limitations of const generics".

这样对吗?是否有超过typenum个超出常量泛型的范围,或者一旦其功能和语法更加成熟,它最终会被常量泛型完全取代吗?

推荐答案

是的,这是正确的,而且在min_const_generics引入之前甚至更正确,在min_const_generics中,不仅算术运算而且所有常量泛型都不可用.那时候typenum(加起来generic-array)真的很有用.今天它不那么有用了,但由于min_const_generics的限制,一些用途仍然需要它.有希望的是,在future ,它将完全不需要.

Rust相关问答推荐

下载压缩文件

在执行其他工作的同时,从共享裁判后面的VEC中删除重复项

如何提高自定义迭代器的`extend`性能

有没有办法避免在While循环中多次borrow `*分支`

为什么这个变量不需要是可变的?

如何修复&q;无法返回引用函数参数的值在异步规则中返回引用当前函数&q;拥有的数据的值?

不能在Rust中使用OpenGL绘制三角形

如何在AVX2中对齐/旋转256位向量?

实现 Deref 的 struct 可以返回对外部数据的引用吗?

我可以禁用发布模式的开发依赖功能吗?

相当于 Rust 中 C++ 的 std::istringstream

方法可以被误认为是标准特性方法

如何使用 Rust Governor 为每 10 秒 10 个请求创建一个 RateLimiter?

如何递归传递闭包作为参数?

是否有适当的方法在参考 1D 中转换 2D 数组

提取 struct 生成宏中字段出现的索引

如何在没有 `make_contiguous()` 的情况下对 VecDeque 进行排序或反转?

基于名称是否存在的条件编译

返回 &str 但不是 String 时,borrow 时间比预期长

您不能borrow 对只读值的可变引用