是否有更简洁的方法来编写以下C++语句:
int max = 0;
int u = up();
if(u > max)
{
max = u;
}
int d = down();
if(d > max)
{
max = d;
}
int r = right();
max = r > max ? r : max;
Run Code Online (Sandbox Code Playgroud)
具体是有一种方法可以在if语句/三元运算符中嵌入函数返回的赋值吗?
假如说:
u,d,r后来)...然后你可以使用std::max:
int m = max(max(max(0, up()), down()), right());
Run Code Online (Sandbox Code Playgroud)
如果这是函数的返回值:
return max(max(max(0, up()), down()), right());
Run Code Online (Sandbox Code Playgroud)
请注意,它可以按任何顺序评估函数,而不是原始代码中的字符串向上,向下,向右排序.
| 归档时间: |
|
| 查看次数: |
404 次 |
| 最近记录: |