例如:
private bool isThisADumbQuestion(bool trustMeThisWilLBeTrue)
{
if (trustMeThisWilLBeTrue)
return true;
}
这总是给出并非所有路径都返回值的错误。在这种情况下,函数声明中是否可以让它返回默认值?从逻辑上讲:
private (bool = false) isThisADumbQuestion() {}
我猜这是不可能的,但我仍在学习大量 C# 语法,所以我想我会问以防万一。似乎这是一个有用的功能,可以在函数体内节省大量检查。
编辑: 上面的代码是一个逻辑示例,不能作为实际方法。我对其进行了编辑,以便它实际上会给出 promise 的错误。抱歉给您带来麻烦,伙计们。
最佳答案
不,这是不可能的。非 void 返回函数上的所有代码路径必须以显式 return
或 throw
语句终止。
注意:正如 xanatos 所指出的,对于 C# 编译器可以确定永不终止的方法,上述规则有一个异常(exception)。例如
int Test() {
while (true) { }
}
关于c# - 有没有办法在没有 return 语句的情况下在函数中返回默认值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7758492/