如果在C#中使用return和short-hand

前端之家收集整理的这篇文章主要介绍了如果在C#中使用return和short-hand前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
为什么下面的代码行不能在一个方法中工作?
return (count > 0) ? true : false;

如果我这样做,它的工作效果很好:

bool ret = (count > 0) ? true : false;
return ret;

奖金问题:它是否比标准的if语句更快或更有效?

bool ret = false;
if(count > 0)
    ret = true;
return ret;

你会推荐哪一个?

解决方法

我会建议:
return count > 0;

没有必要显式返回true或false.

话虽如此,你的编译错误让我感到意外.一见钟情似乎应该会奏效.你可以发布一个简短但完整的示例,无法编译吗?该条件表达式的类型应该是bool,没有问题.我的猜测是你有一个更复杂的场景,简单的例子你已经删除了真正的问题.

至于奖金问题:我不知道哪一个会更快,也不关心99.99%的情况.我很惊讶地发现,它引起了任何重大的延误,除非它由于某种原因禁止内联.寻求最可读的解决方案 – 这是简单的返回语句,IMO.

猜你在找的C#相关文章