摘要:
对于允许用第三个变量来转存交换两个变量的值,有指针和引用。这里很简单,直接给出代码 View Code 不用第三个变量交换,可以通过以下两个方法 View Code 1 a^=b; 2 b^=a;3 a^=b;4 //或者5 a+=b;6 b=a-b;7 a=a-b; 第一次见到是从刘汝佳老师的书上看到的,但不推荐 我们去使用。 一直以为这是一个挺不错的想法,当然,虽然不会去用,但从没有去想以上会有bug。偶尔看到这个博文,发现原来这样的交换是有隐患的: 当两个数的地址相同的时候,结果会变为0。 View Code 1 #include <iostream> 2 #in... 阅读全文