COLLECTION · 合集
Zig 笔记
记录 Zig 这门追求显式控制与可靠性的系统编程语言,无隐藏的控制流,无隐藏的内存分配。
CHAPTER 01
认识 Zig
CHAPTER 02
类型与数据
Zig 基本类型:从位宽、内存形状到失败路径
Zig 的类型不只区分“值是什么”,还把位宽、长度、哨兵、可变性、错误路径和编译阶段直接编码进程序。
Zig 指针与切片:类型能描述边界,却不会替你守住生命周期
从单项指针、多项指针、切片和哨兵出发,理解 const、对齐、optional pointer,以及 Zig 把哪些内存安全责任留给程序员。
Zig allocator 与资源管理:没有隐藏分配之后,责任如何流动
理解 Allocator、alloc/free、create/destroy、defer/errdefer,以及如何让拥有型对象、借用视图和失败回滚形成清晰契约。
Zig 内存布局:普通、extern 与 packed 类型如何对应机器
同样是 struct,普通数据、C ABI 与位级协议需要三种不同承诺;选对表示方式,才能让类型与真实字节一致。
Zig 错误、optional 与控制流:让每条提前退出都留在类型里
optional、error union、switch 与 defer 共同描述成功、缺失、失败和清理路径,让控制流不再藏在异常或空引用之后。
Zig comptime:当类型也是值,泛型就不再需要另一套语言
Zig 用同一套语法执行编译期计算、生成类型并检查接口;理解 comptime,也就理解了它的泛型与反射。
CHAPTER 03