如下代码:
代码如下 | 复制代码 |
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace globalFunc { class Program { static void Main(string[] args) { System sys = new System(); global::System.Console.WriteLine("global."); global::System.Console.ReadKey(); } } public class System { } } |
虽然using了一个System命名空间,但是下面还有一个public class System{ ... }类,这样的话,如果直接使用System.Console.WriteLine是会报错的,因为会找到就近的System类,那么这个System类里面没有Console。所以如果需要使用的话,就需要像上面一样,使用global::System.Console.WriteLine,因为使用global标记的类会从全局开始寻找,我的理解就是会从最外面逐渐向内部寻找System类。