当前位置:  开发笔记 > 编程语言 > 正文

相关类型中+运算符的用途是什么?

如何解决《相关类型中+运算符的用途是什么?》经验,为你挑选了1个好方法。

我需要知道+运算符的目的和最后的'static关键字.我理解'static是指生命周期,但它在此代码中解决了什么目的.

pub trait Group {
    type ColumnValue: Sized + Clone + Eq + Hash + 'static;

    // ...methods...
}

我从llamadb项目的源文件中提取了此代码文本.



1> Veedrac..:

在该上下文中,type X: Y表示X具有边界的某种类型Y.+是一种组合边界的方法,X必须满足所有边界.

换句话说,任何implfor Group必须具有相关的类型ColumnValue,Sized 并且 Clone能够 Eq能够 Hash能够 'static.

因此,任何使用的代码都T: Group知道任何类型的东西T::ColumnValue都可以存储在堆栈(Sized)上,克隆,检查相等,散列并且没有非'static生命周期要求.

推荐阅读
贴进你的心聆听你的世界
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有