#include <iostream>
using namespace std;
int AddWithoutOperator(int num_1, int num_2) {
if(num_2 == 0) {
return num_1;
}
int sum = num_1 ^ num_2; //等同加法,即0,0得1.0,1等1,.1,1得0.
int carry = (num_1 & num_2) << 1; //进位,当有两个1时向前进1
return AddWithoutOperator(sum, carry);
}
int main() {
int a = 10, b = 29;
int res = AddWithoutOperator(a,b);
cout<<res;
}