Ano*_*mus 2 c++ if-statement return ternary-operator language-lawyer
我有以下代码
mystack.empty() ? return 1 : return 0;
Run Code Online (Sandbox Code Playgroud)
从语法的角度来看看起来很完美,但每当我尝试运行它时都会抛出一个错误说
[错误]预期':'在'返回'之前
和
[错误]在'return'之前预期的primary-expression
三元运算符不能与return语句一起使用,或者代码有问题吗?我想代码是自我解释的.
谢谢.
语法无效.三元条件运算符要求其操作数是表达式,但return 1并return 0没有.
另一方面,return语句可以与(可选)表达式一起使用,例如三元条件运算符:
attr(可选)返回表达式(可选); (1)
所以你可以/应该把它写成
return mystack.empty() ? 1 : 0;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
501 次 |
| 最近记录: |