编译期

无名猿14 天前
c++·性能优化·现代c++·编译期
constexpr 能力扩张:从 C++11 到 C++20 的编译期计算constexpr 是 C++ 里最能体现「版本差异」的关键字:同一个函数,C++11 下连个 for 循环都不能写,C++20 下却能在里面 push_back 到 std::vector、调用 std::sort。这篇按标准版本把这条演进线捋直,重点是搞清楚编译期与运行期的边界到底在哪:constexpr 的含义是「可以被编译期求值」,不是「必须」。
潘潘的嵌入式日记3 个月前
安全·嵌入式·宏·调试·编译期·bring-up
一个宏在调试阶段挡住所有误操作一句话: 调试阶段用 #if DEBUG_DISABLE 把危险硬件在编译期干掉——不是"跑的时候检查",是"根本编译不进去"。比运行期判断更可靠,比手动小心更省心。
superman超哥10 个月前
开发语言·后端·rust·元编程·rust过程宏·编译期
Rust 过程宏开发入门:编译期元编程的深度实践过程宏是 Rust 最强大却也最复杂的特性之一,它允许在编译期操作 Rust 代码的抽象语法树(AST),实现自定义的代码生成和转换。从 serde 的自动序列化派生到 tokio 的异步宏、从 thiserror 的错误类型生成到 ORM 的查询构建器,过程宏是 Rust 生态系统中无数强大库的基础。它将编译期计算的能力赋予开发者,让重复性代码自动生成、让领域特定语言(DSL)成为可能、让类型安全的元编程成为现实。但过程宏的开发充满挑战——理解 TokenStream 和 AST 的表示、掌握 syn
我是有底线的