小编rre*_*red的帖子

函数中通用类型的访问字段

在过去的 4 天里,我一直在试图解决这个问题,但我真的被困住了。基本上我有大量类似的结构,都包含一个特定的字段。我们称它为datau32 类型:

struct A {
    data: u32,
}

struct B {
    data: u32
}

...

struct N {
    data: u32
}
Run Code Online (Sandbox Code Playgroud)

我需要做的是在这些结构之外编写一个函数,该函数采用泛型类型(即这些结构中的任何一个)对字段执行一些操作并返回值。基本上是这样的:

fn some_manipulation<T>(st: &T) -> u32 {
    st.data * 10
}
Run Code Online (Sandbox Code Playgroud)

就目前而言,这是不可能的,因为datatype 上没有字段T。另一件事是我无法修改结构。有没有明智的方法来实现这一目标?

rust

4
推荐指数
1
解决办法
345
查看次数

标签 统计

rust ×1