如何将锈蚀泛型限制为空类型?我需要创建一个具有可选值的类型,这样如果泛型类型是(),它就不会使用任何内存。我得到了这个错误(这是有意义的,但不知道如何避免)。我需要处理所有有效的数字类型。trait `std::ops::Add` for type `Data<(), ()>`note: upstream crates may add a new impl of trait `num_traits::Num` for type `()` in future versions
use num_t
("x = {}, y = {}", is_even(x), is_even(y)); | ^ expected type parameter, found integral variable = note: expected type `T`found type `{integer}`
由于这是使用带有具体<
当bool是输出类型时,它可以很好地编译,但在执行过程中似乎会发出叫声。num_traits::Zero+ num_traits::One[1, 0, 1], vec!=` cannot be applied to type `T`: T
我希望找出我在这段代码中哪里出了问题,以及在rust中使用泛型进行比较是否是最惯用的方式。任何额外的反馈都是非常感谢的。