112得票3回答
“as-if”规则是什么?

正如标题所述: “as-if”规则究竟是什么? 一个典型的答案可能是: 允许进行任何不改变程序可观察行为的代码转换的规则。 我们经常会从某些实现中得到与此规则有关的行为,其中很多是错误的。 那么,“as-if”规则究竟是什么呢?标准并没有明确将这个规则作为一个部分或段落进行说...

75得票4回答
循环零执行时间

是否可能有一个执行时间为零的循环?我认为即使是空循环也应该有执行时间,因为与之相关的开销。

14得票3回答
cppreference中有关松散顺序的解释是否错误?

在cppreference.com上有关于std::memory_order的文档,其中提供了一个放松序列的示例: 放松序列 被标记为memory_order_relaxed的原子操作不是同步操作;它们不会强制实施并发内存访问之间的顺序。它们只保证原子性和修改顺序的一致性。 例如,假设x和y...

9得票1回答
仿佛规则和分配的删除

"仿佛规则"赋予编译器权利,在特定规则下可以优化掉或重新排序不影响程序输出和正确性的表达式。其中,§1.9.5规定符合要求的实现执行良好形式的程序时,应该生成与相同程序和输入在抽象机的对应实例中可能执行的相同观察行为。我上面提供的cppreference网址特别提到了C++14下易失性对象值的...