eri*_*MTR 4 c variables performance conditional if-statement
我正在寻找一种更有效的方法来编写这些if-conditionals:
a = huge_term >= b ? huge_term : c
Run Code Online (Sandbox Code Playgroud)
要么
(a = huge_term) >= b ? a : a = c
Run Code Online (Sandbox Code Playgroud)
第二个很短,但变量a出现3次.我需要将结果存储在变量中.你会怎么写的?
我建议使用中间变量并将逻辑分解为自己的函数.通常,每当我发现这样的条件逻辑时,它会在我的项目中一次又一次地出现,因此重构它可以节省时间.
Type processInput(const Type input)
{
auto result = input;
if ( input < b )
{
result = c;
}
return result;
}
int main()
{
const auto input = huge_term;
const auto result = processInput(input);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
211 次 |
| 最近记录: |