rust - Rust 泛型中的常量值

标签 rust rust-obsolete

<分区>

Rust 语言是否支持类似于 c++ 方式的泛型代码中的常量值?似乎是语言 overview不做广告。在 C++ 中使用常量参数化类型允许根据客户的需要创建具有不同大小的预分配缓冲区的对象(类型如 STLsoft::auto_buffer )。
如果不是,那么在 Rust 中实现类似设计的最佳实践是什么?

最佳答案

不,这在类型安全的方式中不受支持。为此,我们需要类型级数字文字,例如 GHC 最近添加的内容。

但是,您可以使用 Rust 宏。使用宏,您可以创建在任意表达式(包括常量)上参数化的"template",这将允许您在这里做您想做的事。请注意,如果您现在尝试此操作,您可能会发现宏系统中的错误和限制。

关于rust - Rust 泛型中的常量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14816336/

相关文章:

rust - 如何将字符转换为字符串?

rust - 通过共享框 ptr 访问时如何使我的结构字段可变?

size - 静态数据繁重的 Rust 库似乎臃肿

rust - 如何在不消耗数据流的情况下查看数据流

rust - 为什么 Rust 编译器会生成巨大的可执行文件?

rust - 什么是已弃用的 std::raw::Repr 的现代模拟?

thread-safety - 无法在线程之间发送 &str,因为它的生存时间不够长

rust - 如何在 Tokio 中为 CPU 密集型工作创建专用线程池?

rust - "expected crate directive"使用rust 错误

rust - 如何将代码重写为新的未装箱闭包