class Solution {
public:
int Add(int num1, int num2)
{
int a,b;
a=(num1&num2)<<1; //相与判断,是否有进位如果有进位的话,左移一位
b=num1^num2; //异或相当于,对没有进位的元素直接进行相加
while(a&b) //相与为真 说明还有进位
{
num1=a;num2=b;
a=(num1&num2)<<1;
b=num1^num2;
}
return a|b;
}
};