【发布时间】:2019-12-13 20:35:23
【问题描述】:
我编写了一个程序,在其中我操作了很多 BigInt 和 BigUint 值并执行一些算术运算。
我在经常使用BigInt::from(Xu8) 的地方生成了代码,因为无法直接添加不同类型的数字(如果我理解正确的话)。
我想减少代码中BigInt::from 的数量。我想过一个函数来“包装”这个,但我需要一个函数来处理我想转换成BigInt/BigUint的每种类型:
fn short_name(n: X) -> BigInt {
return BigInt::from(n)
}
X 将是我要转换的每种类型。
我找不到任何与 Rust 的静态类型哲学不矛盾的解决方案。
我觉得我缺少一些关于特质的东西,但我对它们不太满意,而且我没有找到使用它们的解决方案。
我在尝试做一些在 Rust 中不可能的事情吗?我错过了一个明显的解决方案吗?
【问题讨论】:
-
顺便说一句,我认为问题的标题太准确了,我不知道如何写得足够笼统以涵盖类似的问题,如果你们有更好的主意:)
标签: rust