1

我只是好奇这是如何工作的。似乎找不到太多细节。在我的搜索中可能没有正确地措辞这个问题。但基本上,编译器如何解析名称?它以什么顺序搜索 C# 文件开头的 using 语句中列出的命名空间?

4

1 回答 1

7

按照它们指定的顺序。using 指令实际上是“愚蠢的”,因为编译器试图在您添加的每个命名空间前面加上 using 不合格的类型。如果没有完全限定的类型匹配,你会得到一个未找到的错误。如果有多个匹配项,则会出现模棱两可的类型错误。

CLR 通过 C#第 3 版(链接到第 4 版):

使用 C# using 指令是完全可选的;如果您愿意,随时欢迎您输入类型的完全限定名称。C# using 指令指示编译器尝试为类型名称添加不同的前缀,直到找到匹配项。

于 2013-08-08T18:38:55.827 回答