2510rs,rust清单1

原文

rust必背知识点

数据结构

通过关键字定义数据类型内存位置.

示例,说明

cpp 复制代码
struct S {}
//用命名字段定义结构
 struct S { x: T }
//用T类型的x命名字段定义结构.
 struct S  (T);
//用T类型的`.0`编号字段,定义"元组"结构.
 struct S;
//定义零大小的`单位结构`.不占据空间,优化掉.
enum E {}
//定义枚举,代数`数据类型`,标签联.

 enum E { A, B (), C {} }
//定义枚举的变量;可以是`A`单元,`B()`元组和类似结构的`C{}`.
 enum E { A = 1 }
//有显式判定值的枚举,如,对`FFI`.

 enum E {}
//没有变量的枚举,
union U {}
//针对`FFI`兼容的不安全的类C联
static X: T = T();
 //带`'静态生命期,单内存位置`的`全局变量`

const X: T = T();
//定义常量,使用时,复制进临时

let x: T;
//按x在栈上分配T字节.可分配一次,不可更改.
let mut x: T;
//类似`let`,但允许可变和可变借用.

 x = y;
 //将y移动进`x`,如果T不是`Copy`,则为`y`,否则为`STD`和`copyingy`.

1,在库中,根据如何导入你的crate,你可能会秘密地得到多个X实例.

2,为了同步代码在栈上绑定变量.在async{}中,它们成为可能驻留在堆上异步状态机的一部分.

3,技术上,可变和不变是用词不当.不变的绑定或共享引用可能仍包含单元,从而提供内部可变性.

创建并访问数据结构;以及一些更多类型.

cpp 复制代码
//解释
S { x: y }
//创建结构`S{}`或使用枚举按`y`设置x字段的`E::S{}`.
S { x }
//相同,但对x字段使用`x局部变量`.
S { ..s }
 //填充s中的剩余字段,尤其是使用`Default::default()`很有用.

S { 0: x }
//与下面的`S(x)`类似,但使用`构`语法设置`.0`字段.
S  (x)
//创建结构`S(T)`或使用按`x`设置`.0`字段的`E::S()`枚举.
S
//如果S是单元结构`S`;或使用枚举`E::S`创建S的值.

E::C { x: y }
//创建`C`枚举变量.上面的其他方法也有效.
()
//空元组,包括文字和类型,也叫单位.
(x)
//括号内的式.
(x,)
//单元素元组式.
(S,)
//单元素元组类型.
[S]
 //未规范的数组类型.长度,即切片.不能在栈上
[S; n]
//`固定长度`的包含S类型的元素的`数组类型`.
[x; n]
//有n个x副本的数组实例(式)
[x, y]
//有给定元素x和y的数组实例.

x[0]
//集合索引,`w.usize.Impl`通过`Index,IndexMut`.
 x[..]
 //相同,通过区间(这里是全区间),也有`x[a..b],x[a..=b],..`.如下.

a..b
//右排他区间创建,如,`1..3`表示`1,2`.
..b
//没有起点的右排他区间.
..=b
//没有起点的区间.
a..=b
//包含区间,`1..=3`表示`1,2,3`.
a..
//区间从到没有终点.
..
//全区间,一般表明整个集合.
s.x
//命名字段访问,如果x不是类型S的一部分,则`引用`可能会试`解引用`.

s.0
//数字字段访问,针对`S(T)`元组类型.
相关推荐
熊猫钓鱼>_>3 小时前
Rust语言特性深度解析:所有权、生命周期与模式匹配之我见
算法·rust·软件开发·函数·模式匹配·异步编程·质量工具
fqbqrr4 小时前
2510rs,rust清单2
rust
Source.Liu4 小时前
【pulldown-cmark】 初学者指南
rust·markdown·pulldown-cmark
呼啦啦嘎嘎5 小时前
《100 Exercises To Learn Rust》练习笔记
rust
Amos_Web5 小时前
Rust实战课程--网络资源监控器(初版)
前端·后端·rust
WujieLi21 小时前
初识 Vite+:一文了解 Rust 驱动的新一代前端工具链
javascript·rust·vite
std860211 天前
Rust 与 Python – 这是未来的语言吗?
开发语言·python·rust
std78791 天前
Rust 与 Go – 比较以及每个如何满足您的需求
开发语言·golang·rust
Amos_Web2 天前
Rust实战教程--文件管理命令行工具
前端·rust·全栈