🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
因为增量和减量都是很常见的操作,所以C++为它们提供了专用操作符。++操作符的功能是将当前变量增加1,它支持int、char和double类型,而--操作符将当前变量减少1。这两个操作符都不能应用于apstring类型,也不能应用于bool类型。 从技术角度讲,增加一个变量的同时将它作为一个表达式是合法的。例如,你可能会看到这样的写法: ~~~ cout << i++ << endl; ~~~ 看这个例子,增量发生在输出之前或者之后并不清楚。因为这种表达式令人困惑,所以不建议读者使用。 实际上,为了进一步阻止你使用它,我不会告诉你该语句的答案。如果想知道,请自行尝试。 我们可以使用增量操作符重写字符计数程序: ~~~ int index = 0; while (index < length) { if (fruit[index] == ’a’) { count++; } index++; } ~~~ 下面是一个常见错误: ~~~ index = index++; // 错误!! ~~~ 很不幸,这在语法上是正确的,编译器不会给出警告。这个语句会导致index的值没被改变【译者注1】。这是个难以定位的bug。 记住,你可以写index = index +1;,也可以写index++;,但是不能将他们混到一起。 *译者注1: index = index++; 的实现与编译器有关,原书这里的说法不是很准确。当然,这种写法肯定是要避免的。*