24 May 2023

C++ 核心指南目录

“Don’t underflow”

理由

减到最小值以下,会导致内存错误以及未定义的行为。

坏例子

int a[10];
a[-2] = 7;   // bad

int n = 101;
while (n--)
    a[n - 1] = 9;   // bad (twice)

例外

如果需要求模运算,可以用无符号类型。