今天我们来看一看Rust中的prelude,它在std模块下,默认是导入的,不用再使用use关键字导入。为什么要说这个,因为它非常重要(不重要也不会在prelude里了)。几乎所有的代码都是要从这些类型开始构建,熟练掌握它们,才能写出高质量...
5.1 创建和访问 枚举的创建和访问在结构上与结构体很相似,成员访问是以路径符号::而不是点号.,下面列举了常见的枚举形式 5.2 内存排布和优化 Rust 本质上是一个带标签的联合体,标签最大等于计算机字长:通常是8字节 O...
Rust中有两个非常重要的、令人亢奋的篇章,并发编程和异步编程。今天我们来看看和并发有关的原子类型。我们可以使用Rust标准库thread模块下的spawn函数创建线程,它是Rust的原生线程,由操作系统调度,每个线程都有自己的堆栈和本地状...
1 可变与不可变 在Rust中声明一个变量时,要明确变量的可变性。默认是不可变的,如果想要修改这个变量,必须先将其声明为可变类型,否则编译无法通过。如: 2 共享可变容器 但是我们在实际的业务中可能需要更改不可变变量。如何做到这一点...
为什么基础的还没介绍完,就开始介绍一些很生僻的内容?一方面是因为这些内容迟早要介绍,另一方面是满足大家的好奇心,让我们看看Rust到底有藏了多少宝贝。还有就是尽早面基这些内容,可以消除对语言的陌生感,要一种回看似曾相识以及恍然大悟的感觉。言...
1 集合容器的种类 标准库中有很多集合容器,它们以各种逻辑组织了数据,允许各种各样的操作,如增删改查等。除了Vec<T>之外,它们都在std::collections模块下 2 Vec<T>原理与应用 2....
1 HashMap 1.1 如何构建HashMap 今天我们来看Rust中的另一个集合容器:HashMap<K,V>。HashMap是编程语言最重要的数据结构之一,在设计时需要考虑以下几点: 避免哈希冲突 防止H...