【发布时间】:2019-07-04 15:37:50
【问题描述】:
非泛型结构能否在 rust 中实现泛型函数,其工作方式如下:
struct S;
impl <T> S {
fn do_something(value : T) {
//do something
}
}
fn main() {
let a = /*a value*/;
S::do_something(a);
}
如果不是,假设 S 实现了一个通用特征 Tt:
struct S;
impl <T> Tt<T> for S {
fn a_func(value : T) {
//do something
}
}
impl <T> S {
fn do_something(value : T) {
//do something
}
}
fn main() {
let a = /*a value*/;
S::do_something(a);
}
有什么办法让它起作用吗?
【问题讨论】:
-
为
fn而不是struct定义泛型参数怎么样?