我一直在编写使用函数调用的代码,这些函数调用非常长并且通常超过80个字符。通常我会将这些函数调用拆分为:
LongFunctionName(first_argument,
another_argument,
finally_last_argument);
但是,当我尝试将它放入if语句时,它看起来很奇怪,主要是因为它与它的比较变得不太清楚:
if(LongFunctionName(first_argument,
another_argument,
finally_last_argument) != value_compared_to)
{
// stuff to be called
}
您如何将此语句格式化为更易读并且适合80个字符?
答案 0 :(得分:8)
我会考虑将函数调用放在自己的行上:
const auto value = LongFunctionName(first_argument,
another_argument,
finally_last_argument);
if (value != value_compared_to) {
// ...
}
您甚至可以为value
变量提供一个很好的描述性名称,以帮助理解代码。
答案 1 :(得分:3)
将返回值存储在变量中是最好的解决方案。但你可以做点别的事情:
if (value_compared_to != LongFunctionName(first_argument,
another_argument,
finally_last_argument))
答案 2 :(得分:0)
您有两种选择:
1)
接受它看起来像这样
OR
2)
在单独的Statement(伪代码)
中评估函数调用的返回值retval = LongFunctioName(first_argument, second_argument, third_argument);
if(retval != desired_val) { ... }
答案 3 :(得分:0)
不要让我们开始那个,我会做
if
( LongFunctionName
( first_argument
, another_argument
, finally_last_argument
) != value_compared_to
)
{
// stuff to be called
}