【发布时间】:2016-09-24 10:33:58
【问题描述】:
一篇关于命名空间的文章说
命名空间是 C# 程序元素,旨在帮助您组织 程式。他们还为避免名称冲突提供帮助 在两组代码之间。在您自己的代码中实现命名空间是 一个好习惯,因为它可能会让你在以后遇到问题时 你想重用你的一些代码。例如,如果您创建了一个 名为 Console 的类,您需要将其放在您自己的命名空间中 确保没有任何混淆 System.Console 的时间 应使用类或何时应使用您的类。
现在想象一下,就像上面的语句一样,我确实在我的命名空间中创建了一个 Console 类,名为:myNamespace。
现在,当有人想使用我的图书馆时,他/她必须这样做:
using myNamespace;
但她可能需要这样做
using System;
也是。
所以我们还是有冲突。如果我输入Console,我指的是哪个控制台?
使用命名空间如何解决这个问题?
附言。额外:还有命名空间如何在幕后工作:我记得在某处我读过编译器只是在函数前面加上命名空间来查找它们的定义?
是这个吗?命名空间真的只是对代码进行分组的一种手段吗?
【问题讨论】:
-
在命名空间和使用正确之前不会编译。如果您在命名空间中使用不模糊的属性,那很好。
-
@SebastianSchulz 不明白你想说什么
-
在纠正所有错误之前,您无法编译您的 C# 项目。如果使用了不明确的类/属性,编译器将显示错误。您可以使用类的完整限定名来更正如下错误:
myNameSpace.Console.....
标签: c# namespaces