Zig 引入部分运算符优先级新规则

Partial Operator Precedence

Zig 语言终于实施了十年前的提案,引入了部分运算符优先级机制。对于像 orelse 和 == 这样容易混淆的运算符组合,编译器将强制要求使用括号来消除歧义,从而大幅降低程序员记忆复杂优先级规则的记忆负担。这一改动虽然会影响部分现有代码,但通过 zig fmt --upgrade 工具可以自动修复。此外,本次更新还优化了裸包(Naked Package)的元数据处理,支持指定版本和路径以生成更稳定的哈希值,并新增了依赖树打印和哈希一致性验证功能,进一步提升了构建系统的可靠性。

无论你对 Zig 多么熟悉,如果不查阅优先级规则,你几乎无法解释下面这个表达式的求值顺序。

同日更多故事

2026-11-05