[英]Floating curly braces in C#
我今天遇到了一段我以前从未见过的 C# 代码。 程序员仅使用大括号(没有 if、class、function 等)定义了一段代码。
{
int i = 0;
}
i++; //compile error
除了使代码看起来更有条理之外,还有其他目的吗? 使用这种“浮动”上下文是好是坏还是其他什么做法?
您可以使用一组打开和关闭的大括号来定义一个自包含块,它有自己的作用域。
不过,这通常不被认为是好的编程习惯。
通常如果有人在做这样的事情,最好在它的位置创建一个方法/函数。
这些花括号“范围”内的任何变量都将超出其范围。
它将变量的范围限制在该块内。 所以变量 i 将无法在这些大括号之外看到。
如果有人想要分离代码,但在大多数情况下没有必要时使用它,这也可以是一种偏好。
该代码根本没有任何意义。 可能是他/她试图做的其他事情的人工制品。 正如评论所示,这甚至无法编译,因为i
超出了范围。
从编码风格的角度来看,我个人不喜欢它,而且我以前从未见过有人使用浮动大括号来“组织”他们的代码。
C# 中的大括号{}
定义了作用域。 一旦大括号终止,其中定义的任何内容都会“超出范围”。
这个例子似乎毫无意义。 我无法想象为什么会在现实世界的代码中使用它。 我假设你削减了呈现的代码?
这样做的目的是为了说明int i
实际上与它下面的递增i
处于不同的范围内。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.