平均而言,哪个更快 - 检查值然后,如果需要,分配,还是简单地分配?或者,用 C++ 术语来说:
bool b;
if(b)
b = false;
或者
b = false;
假设 if() 条件以 50% 的概率为真。答案很可能是高度依赖于架构的——请说出您的低级考虑。写总是弄脏缓存线——对吧?因此,通过避免写入,我们可以避免 0.5 种情况下的缓存刷新。但是一个足够聪明的缓存可能会检测到一个微不足道的写入,而不是它本身。但是无条件写入总是恰好是一次内存操作,而读写平均是 1.5 次操作。
免责声明:这是一个好奇的问题,而不是我实际面临的问题。