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)`元组类型.
相关推荐
Hello.Reader1 天前
Rocket Fairings 实战把全局能力做成“结构化中间件”
中间件·rust·rocket
Andrew_Ryan1 天前
rust arena 内存分配
rust
Andrew_Ryan1 天前
深入理解 Rust 内存管理:基于 typed_arena 的指针操作实践
rust
微小冷2 天前
Rust异步编程详解
开发语言·rust·async·await·异步编程·tokio
鸿乃江边鸟2 天前
Spark Datafusion Comet 向量化Rust Native--CometShuffleExchangeExec怎么控制读写
大数据·rust·spark·native
明飞19873 天前
tauri
rust
咚为3 天前
Rust tokio:Task ≠ Thread:Tokio 调度模型中的“假并发”与真实代价
开发语言·后端·rust
天天进步20153 天前
Motia性能进阶与未来:从现有源码推测 Rust 重构之路
开发语言·重构·rust
Hello.Reader4 天前
Rocket 0.5 响应体系Responder、流式输出、WebSocket 与 uri! 类型安全 URI
websocket·网络协议·安全·rust·rocket
FreeBuf_4 天前
黑客利用React Native CLI漏洞(CVE-2025-11953)在公开披露前部署Rust恶意软件
react native·react.js·rust