Rust 一个人如何绕过“a”呢;借用内容“;从对特征的引用读取值时出错';关联类型是什么?

Rust 一个人如何绕过“a”呢;借用内容“;从对特征的引用读取值时出错';关联类型是什么?,rust,Rust,我有一个指向u64值的指针,无法读取它。我得到这个错误: 错误[E0507]:无法移出借用的内容 -->/home/niko/sub/subside/srml/system/src/lib.rs:533:32 | 533 |让mut-aid:T::AccountId=*复制who; | ^^^^^^^^^ | | |无法移出借用的内容 帮

我有一个指向
u64
值的指针,无法读取它。我得到这个错误:

错误[E0507]:无法移出借用的内容
-->/home/niko/sub/subside/srml/system/src/lib.rs:533:32
|
533 |让mut-aid:T::AccountId=*复制who;
|                                         ^^^^^^^^^
|                                         |
|无法移出借用的内容
帮助:考虑删除'* ':'Copyf'
如何避免“借用内容”错误?如果无法读取变量所指向的任何内容,那么使用指向变量的指针有什么意义

impl<T: Trait> Module<T> {
    // getter for AccountId
    pub fn get_account_id(who: &T::AccountId) -> T::AccountId {
        let mut copy_who: &T::AccountId = who;
        {
            let mut aid: T::AccountId = *copy_who;
            return aid;
        }
    }
}

你的问题可以归结为

trait Example {
    type AccountId;
}

fn get_account_id<T>(who: &T::AccountId)
where
    T: Example,
{
    *who;
}
为了编译此代码,
T::AccountId
必须实现
Copy

fn get_account_id<T>(who: &T::AccountId)
where
    T: Example,
    T::AccountId: Copy,
{
    *who;
}
fn获取账户id(who:&T::AccountId)
哪里
T:举个例子,
T::AccountId:复制,
{
*世卫组织;
}
然而,这并不是最灵活的解决方案


请查看如何创建一个,然后查看您的问题以将其包括在内。我们无法说出代码中存在哪些板条箱(及其版本)、类型、特征、字段等。如果可能的话,试着在新的货物项目中重现你的错误。您可以使用以下方法来减少在此处发布的原始代码。您最近提出了许多收到效果不佳的问题(;)。请考虑重新评估你的问题,根据你的问题的编辑和人们提出的要求,你所提供的代码是无效的:<代码>特性<代码>和<代码>模块<代码>未在任何地方被声明。请在新的Cargo项目或游乐场中测试您的代码,以确保您提供的代码产生您所询问的错误。顺便说一句,它不是指针,而是引用。这是一个巨大的差异。你应该考虑阅读,以正确地学习语言。加上“哪里:::Actudid:Apple”句子有效,谢谢!
fn get_account_id<T>(who: &T::AccountId)
where
    T: Example,
    T::AccountId: Copy,
{
    *who;
}