相关疑难解决方法(0)

impl trait参数和泛型函数参数之间有什么区别?

impl Traits可以用作函数参数.这个和具有特征约束的泛型函数之间是否存在差异?

trait Foo {}

fn func1(_: impl Foo) {}

fn func2<T: Foo>(_: T) {}
Run Code Online (Sandbox Code Playgroud)

rust

11
推荐指数
2
解决办法
785
查看次数

如何在Rust中的签名中使用Fn traits/closures

我想编写一个int-returning函数,它接受一个带零参数的闭包,一个带一个参数的闭包,一个带两个参数的闭包,其中所有闭包参数都是类型int,每个闭包返回f32.

这个函数的签名是什么样的?

现在我想接受通过FnFnMut特征.签名是什么样的?是否需要使用箱子中的功能?如果是这样,哪些是为什么?

如果知道:它看起来像糖?脱?

如果知道:未来可能会发生什么变化?

rust

10
推荐指数
2
解决办法
7921
查看次数

函数如何要求类型实现特征而不删除现有特征界限?

我正在尝试返回具有特征main_func的类型结构的向量TSrObject

struct TestA {
    value: u8,
}

pub trait SrObject {
    fn myfunc(&mut self);
}
impl SrObject for TestA {
    fn myfunc(&mut self) {
        unimplemented!();
    }
}
impl Default for TestA {
    fn default() -> TestA {
        TestA { value: 3u8 }
    }
}

fn main_func<T: SrObject>(t: T) -> Vec<T> {
    let mut v = Vec::<T>::new();
    for i in 0..10 {
        v.push(T::default());
        //v[i].myfunc();
    }
    return v;
}
Run Code Online (Sandbox Code Playgroud)

它给:

struct TestA {
    value: u8,
}

pub trait …
Run Code Online (Sandbox Code Playgroud)

generics struct traits type-parameter rust

0
推荐指数
1
解决办法
810
查看次数

标签 统计

rust ×3

generics ×1

struct ×1

traits ×1

type-parameter ×1