很多年前看Accelerated C++的时候看到了这个概念,当时觉得没啥用,今天偶然翻到这个这里,发现挺有意思.
例如
r = 0; //不变式:当前已经加了r次 sum = 0; while (r != 10) { sum += r; // 加了之后,不变式就不成立了 r++; // 使不变式成立 }
这样我们可以始终确保r就是当前加过的次数
最后,while循环结束时,r为10,我们就可以直接说加了10次