【问题标题】:non-volatile variables非易失性变量
【发布时间】:2012-10-13 23:24:19
【问题描述】:

如果我将变量标记为易失性,我会在代码中的每次访问时获得保证读取。

但是非易失变量呢?

是否保证每个函数/块至少读取一次,或者是否可以跨函数边界优化值?

【问题讨论】:

    标签: c++ c volatile non-volatile


    【解决方案1】:

    如果内联(即使是无缘无故的,即没有inline)无论如何都可以根除它们,为什么函数边界很重要?

    I.O.W.:是的,在 as-if 规则下几乎任何事情都是可能的:只要程序表现得好像编译器没有优化任何东西,它就可以对其做任何事情。 (而且该标准的边界也很模糊。例如,删除副本是允许编译器的核心内容,而缺少的副作用是该死的。)

    【讨论】:

    • 嗯,这就是我问的原因。 :-D
    猜你喜欢
    • 2023-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多