2013-10-17 51 views
4

在使用C++进行编程时,我经常会混淆“+ =”和“= +”,前者实际上就是我的意思。 Visual Studio似乎同时接受,但他们的行为有所不同,是我的很多错误的来源。我知道+ = b在语义上等价于a = a + b,但是“= +”是做什么的?C++中+ =和= +之间的区别

+1

由于人们已经回答了,你应该使用'+ ='和'不= +'。如果您发现自己经常犯这样的错误,那么只需在文件中写出需要查找的事项的清单并定期(在发布之前)修复。 '= +'会是这些事情之一。您也可以添加通常的拼写错误 - 长度为''lenght',格式不正确''if('if for(',等等)到列表中。 –

回答

12

=+真的是= +(转让和一元运算符+)。

为了帮助您记住+=,请记住它会先添加,然后再进行赋值。当然,这取决于实际的实施,但它应该是原始的。

6

a =+ b意味着a = +b意味着a = b

+8

除非一元'+'重载。 –

+0

除非'b'是一个小于“int”的整数类型,在这种情况下,它将'b'提升为'int'并进行赋值。 –