- 4
- 0
- 约1.69千字
- 约 2页
- 2023-12-17 发布于宁夏
- 举报
Rust知识点总结
pub:表⽰struct字段,impl块和模块的公共可见性。
pubmodxxx与pubusexxx
pubmodxxx;相当于把xxx复制到这个pubmod语句处,再冠以pub(这个⽐较好理解)
pubuseyyy相当于java的import(即use本来的意义),或者说建⽴快捷⽅式链接
函数
函数在Rust语⾔中是普遍存在的。
通过之前的章节已经可以了解到Rust函数的基本形式:
fn函数名(参数)函数体
特性(trait)
特性(trait)概念接近于Java中的接⼝(Interface),但两者不完全相同。特性与接⼝相同的地⽅在于它们都是⼀种⾏为规范,可以⽤于标
识哪些类有哪些⽅法。
特性在Rust中⽤trait表⽰:
traitDescriptive{
fndescribe(self)-String;
}
这⾥声明了⼀个叫做Descriptive的特性,特性Descriptive规定了实现者必须是有describe(self)-String⽅法的。
我们⽤它实现⼀个结构体:
structPerson{
name:String,
age:u8
}
implDescriptiveforPerson{
fndescribe(self)-String{
format!({}{},self.name,self.age)
}
}
格式是:impl特性名for所实现的类型名
Rust同⼀个类可以实现多个特性,每个impl块只能实现⼀个。
Rust中的关键字(Keywords)
as:基本类型变换,消除某个项中包含的特定trait的歧义性,或者是重命名use和externcrate中所⽤到的项.
break:⽴刻退出⼀个循环.
const:常量项以及常量原始指针.
continue:继续下⼀个循环迭代.
crate:连接外部crate,或者是⼀个宏变量以表⽰宏定义所处于的crate.
else:if和iflet控制流结构的回退.
enum:定义枚举体.
extern:外部crate,函数,以及可变链接.
false:布尔false.
fn:函数定义和函数指针类型.
for:迭代循环;traitimpl语法的⼀部分;更⾼级的⽣命周期语法.
if:条件分⽀.
impl:本能和trait实现块.
in:for循环结构的⼀部分.
let:变量绑定.
lp:⽆条件的⽆限循环.
match:模式匹配.
mod:模块声明.
move:使得⼀个闭包获得它的所有捕获项的所有权.
mut:表⽰索引中的可变性,原始指针和模式绑定.
pub:表⽰struct字段,impl块和模块的公共可见性.
ref:索引绑定.
return:从函数返回.
Self:某类型在实现⼀个trait时的类型别名.
self:⽅法标题或当前模块.
static:全局变量或者⽣命周期为整个程序执⾏时间.
struct:结构体定义.
super:当前模块的⽗模块.
trait:特性定义.
true:布尔true.
type:类型别名;关联类型定义.
unsafe:表⽰不安全的代码,功能,特征和实现.
use:将符号导⼊作⽤域.
where:type约束条件.
while:条件循环.
union:(1.19新增)联合体声明,与struct不同的是其中所有fields共⽤存储空间.
原创力文档

文档评论(0)