gpt4 book ai didi

c# - 为什么只有一个语句的方法需要大括号?

转载 作者:bug小助手 更新时间:2023-10-28 10:49:11 31 4
gpt4 key购买 nike

public void Finalise()
ProcessFinalisation(true);

无法编译,但版本正确:

public void Finalise()
{
ProcessFinalisation(true);
}

编译良好(当然)。

如果在以下代码只有一行时允许使用不带括号的 if:

if(true)
CallMethod();

为什么后面一行的方法不允许使用相同的方法?有技术原因吗?

最佳答案

显而易见的答案是语言规范;出于推理...我想主要是简单性 - 对于 tiny tiny 数量的单语句方法进行健全性检查规范和编译器的开销是不值得的.特别是,我可能会看到通用约束等问题(即签名末尾的 where T : IBlah, new())。

请注意,不使用大括号有时会导致歧义,并且在某些地方会令人不悦。我个人比那更务实一点,但每个人都有自己的。

Razor 内部的 C#不允许在没有显式大括号的情况下使用。完全没有(即即使对于 if 等)。

关于c# - 为什么只有一个语句的方法需要大括号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6016654/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com