很久以前, 当牧羊人想要了解两个羊群是否相似时, 会挨个对它们进行比对. ---- John C. Baez, James Dolan Rust中的结构体地位等于类, 但是具体实现与类有差异. 结构体…
这是Rust主题下的小小理念之一: 系统程序员也能享受美好. ---- Robert O'Callahan 本章介绍的特型: crate: 项目间代码共享 模块: 项目内代码组织 版本管理 记录和测…
我知道只要活得足够久, 这种事就一定会发生. ---- 萧伯纳论死亡 本章介绍两类错误: panic: 永远不应该发生的错误 Result: 普通错误, 通常表示程序外部的错 (IO, 网络中断, …
LISP程序员知道一切的价值, 但不了解其代价. ----Alan Perlis 6.1 表达式语言 Rust是表达式语言, 这意味着: 虽然Rust严格区分语句(Statement)和表达式(Ex…
图书馆(库)无法弥补个人(程序员)能力的不足. --Mark Miller 引用定义: reference, 非拥有型指针(不影响值的生命周期), 受到borrow checker的检查. 引用约束…
8.1 一维数组 特性说明代码 数组定长数组长度必须是常量表达式但是索引时可以是变量表达式 (前提是整数)int a[10]; 索引通过下标访问元素的操作a[0] = 1; 不检查越界C语言不检查下标…
7.1 整数类型 两种类型: 有符号数: 使用补码表示, 需要最高位作为符号位. 无符号数: 使用原码表示, 只能表示正整数. 特性说明代码 类型实际长度是不确定的由机器和编译器决定, 但是通常:…
6.0 前言 循环(loop)是重复执行其他语句的一种语句 (本质是语句, 类似于if) 学习三类循环语句: while do-while for 学习循环特性语句: break continu…
所有的语句类型: 表达式语句 (最常见) 选择语句: if, switch 重复语句: while, do-while, for 跳转语句: break, continue, goto, retur…
前言 图书馆(库)无法弥补个人(程序员)能力的不足. --Mark Miller 内存管理的目标: 内存及时释放 阻止悬空指针 解决方法: 针对内存释放: 通过垃圾回收机制来管理内存, 所有对象…