问题在内部for循环中
for (int i=0, j=0; i<n; i++, j++){
if (i != j){
cout << sum = sum + arr[j] <<endl;
*//error: overloaded function type*
}
}
cout << sum = sum + arr [j] << endl;
答案 0 :(得分:4)
这是operator precedence的问题。
可以通过将表达式放在括号中来解决:
cout << (sum = sum + arr[j]) << endl;
但是,这是非常可怕的样式,您应该将其分为两行:
sum += arr[j];
cout << sum << endl;
您未来的自我以及任何阅读您的代码的人都会感谢您。