作者:埃菲尔的天空有什么 | 来源:互联网 | 2023-02-05 14:34
我的方法中的最后一行应该是
return methodName(xxx,xxx);
但我有它
return (xxx,xxx);
方法返回类型是bool,我只是在调试问题时才注意到拼写错误.我没想到return (xxx,xxx);
要编译.它究竟做了什么?
1> eerorika..:
()运算符的返回值
这不是()运算符的调用.()运算符的语法需要函数的标识符或正在调用的变量.如果没有标识符,表达式周围的括号将用于对子表达式进行分组,并可能更改操作的执行顺序.例如:1 - (2 - 3)
对后两个操作数进行分组,结果与之不同1 - 2 - 3
.以下是括号调用函数的示例:1 - cos(2 - 3)
.
在你的情况下,没有兄弟表达式,所以括号不会改变任何东西的顺序,表达式相当于
return xxx,xxx;
这是逗号运算符的调用,类似于:
xxx;
return xxx;
只要xxx
可以隐式转换为函数的返回类型,就可以很好地形成它.