下面两种定义命名空间的方式有什么区别?
namespace A.B.C {
public class AA{
}
}
namespace A {
namespace B{
namesapce C{
public class AA{
}
}
}
}
在某些地方我可能有
namespace A{
//some classes
}
namespace A.B {
//some classes
}
namespace A {
namespace B {
//some classes
}
}
两者都需要做同样的事情才能通过 using A.B.C;
使用类 AA 我可以使用 C.AA a;
在 C 命名空间中指定 AA 类吗?使用 fall 命名空间约定:A.B.C.AA a;
以避免可能的冲突?
最佳答案
它们是一样的。如果您查看 .NET Reflector 中的这段代码:
namespace A {
namespace B{
namespace C{
public class AA{
}
}
}
}
你明白了:
namespace A.B.C
{
public class AA
{
// Methods
public AA();
}
}
两种方法都被编译成完全相同的中间语言代码。
关于C# 命名空间问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2241129/