V2EX  ›  英汉词典
Enqueued related words: Translation Unit

Constinit

释义 Definition

(C++20 关键字)用于强制具有静态/线程存储期的变量必须在编译期完成初始化(即“常量初始化”);若只能进行运行期动态初始化,则会编译报错。它强调“初始化必须尽早(编译期)完成”,但不等同于常量表达式(变量仍可在之后被修改)。

发音 Pronunciation (IPA)

/ˌkɑːnˈstɪnɪt/

例句 Examples

The constinit variable is initialized before main() starts.
constinit 变量会在 main() 开始之前完成初始化。

Using constinit prevents the “static initialization order fiasco” by rejecting any dynamic initialization across translation units.
使用 constinit 可以通过拒绝跨编译单元的动态初始化来避免“静态初始化顺序灾难”。

词源 Etymology

constinit 是由 const(constant,常量)与 init(initialize,初始化)的缩合/拼接而来,表达的核心意思是“要求常量初始化(编译期初始化)”。

相关词 Related Words

文学/作品中的用例 Literary Works

  • *ISO/IEC 14882:2020 — Programming Languages — C++*(C++20 标准文本中引入并规范 constinit
  • C++20 - The Complete Guide(Nicolai M. Josuttis,讲解 C++20 新特性时涉及 constinit
  • cppreference.com(C++ 参考文档中对 constinit 的语义与用法有条目说明)
关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   1761 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 11ms · UTC 16:20 · PVG 00:20 · LAX 09:20 · JFK 12:20
♥ Do have faith in what you're doing.