【发布时间】:2014-12-15 05:09:01
【问题描述】:
所以我想写一个这样的函数:
fn is_longer_than<T>(thing: T, threshold: int) -> bool {
thing.len() > threshold
}
一般来说,我对 rust 和静态类型/泛型还很陌生,但据我了解,您需要使用一个特征来约束 T,在这种情况下,实现方法 len
我试图做这样的事情:
trait HasLength {
fn len(&self) -> int
}
fn is_longer_than<T>(thing: HasLength, threshold: int) -> bool {
thing.len() > threshold
}
但这不起作用。我错过了什么?我猜有一个涵盖这种情况的预定义特征?即便如此,有没有办法定义它(为了学习)
【问题讨论】: