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)`元组类型.
相关推荐
大卫小东(Sheldon)21 小时前
Rust 推荐使用宏而非普通函数的场景
rust
doiito21 小时前
【Agent Harness】为什么我把 JSON‑LD “编译成 DAG” 后,整个 Agent 平台立刻聪明了
ai·rust·架构设计·系统设计·ai agent
jump_jump1 天前
为了重玩金庸群侠传,我研究了一下 Ruffle 怎么复活 Flash
游戏·rust·github
星栈2 天前
Dioxus 多页面怎么做:`dioxus-router`、嵌套路由、`Outlet` 和页面组织,一篇给你讲顺
前端·rust·前端框架
Rust研习社4 天前
组合真的优于继承吗?为什么 Rust 和 Go 都拥抱组合舍弃继承?
后端·rust·编程语言
红尘散仙5 天前
想写一个像样的终端 App?试试把 React 的开发体验搬进 Rust TUI
前端·rust
vivo互联网技术5 天前
从 Web 到桌面:基于 Tauri 2.0 + Vue 3 打造 vivo 线下门店「大头贴」拍照体验系统
前端·rust
Rust研习社5 天前
这 8 个 Rust 学习资源值得每个新手收藏起来
后端·rust·编程语言
星栈6 天前
10 分钟跑起第一个 Dioxus 应用:`dx` CLI、`rsx!` 和热更新好不好用
前端·rust·前端框架
望眼欲穿的程序猿6 天前
读取芯片内部温度传感器
嵌入式硬件·rust