【问题标题】:Understanding static initialization in standard 6.7/4了解标准 6.7/4 中的静态初始化
【发布时间】:2015-06-24 05:39:24
【问题描述】:

从标准 6.7/4:

所有块范围变量的零初始化(8.5)静态 存储持续时间(3.7.1)或线程存储持续时间(3.7.2)是 在任何其他初始化发生之前执行。

不清楚是在程序启动期间执行零初始化还是在控件首次执行块期间执行?

【问题讨论】:

    标签: c++


    【解决方案1】:

    我会报告一个更长的 sn-p。那是你的部分

    所有块范围变量的零初始化(8.5)静态 存储持续时间(3.7.1)或线程存储持续时间(3.7.2)是 在任何其他初始化发生之前执行。持续的 具有静态存储的块范围实体的初始化(3.6.2) 持续时间,如果适用,在它的块是第一个之前执行 进入。

    这是后续行动,我理解这意味着它可以同时做到这两点。这就是我给本节的含义(同段的延续)

    允许提前执行 使用静态或线程初始化其他块范围变量 在与实现相同的条件下存储持续时间 允许使用静态或线程静态初始化变量 命名空间范围内的存储持续时间 (3.6.2)。

    我们现在所能做的就是等待以英语为母语的人确认/反驳我的法律解密...

    【讨论】:

    • 谢谢,既然关于初始化命名空间范围内变量的规则很清楚,我明白了。
    猜你喜欢
    • 2015-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 2011-04-19
    • 2014-10-06
    • 2020-04-14
    相关资源
    最近更新 更多