在 C# 中,类位于命名空间括号内和仅在同一文件中声明命名空间有什么区别?

问题描述 投票:0回答:2

有区别吗:

namespace Project.Location 
{
   public class ExampleClass 
   {
      // class stuff ...
   }
}

---- 和 --------------------------------------------------------

namespace Project.Location;

public class ExampleClass 
{
    // class stuff ...
}
c# .net namespaces
2个回答
0
投票
C# 10 中添加了

文件范围的命名空间,并且您的示例在功能上是等效的。在 C# 10 之前,第二个示例不是有效的语法 - 命名空间必须具有范围括号 (

{}
)。


0
投票

它称为文件作用域命名空间,自 C#10 起可用

https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/proposals/csharp-10.0/file-scoped-namespaces

namespace Project.Location 
{
   public class ExampleClass 
   {
      // class stuff ...
   }
}

相当于写作

namespace Project.Location;

public class ExampleClass 
{
    // class stuff ...
}
© www.soinside.com 2019 - 2024. All rights reserved.