在C#中,A :: B和A.B之间有什么区别?我注意到的唯一区别是只有::可以与全局一起使用,但除此之外,有什么区别?为什么它们都存在?
解决方法
与::你可以做的事情……
extern alias X; extern alias Y; class Test { X::N.A a; X::N.B b1; Y::N.B b2; Y::N.C c; }
而且有时候.是不明确的所以::是需要的.这是C#语言规范的例子
namespace N { public class A {} public class B {} } namespace N { using A = System.IO; class X { A.Stream s1; // Error,A is ambiguous A::Stream s2; // Ok } }