::運算符稱爲名稱空間別名限定符。
global::System.Data.DataTable
是一樣的:
System.Data.DataTable
Visual Studio 2008中添加它來設計器生成代碼,以避免當人們創建了一個名爲系統......例如類,偶爾發生ambigious引用問題:
class TestApp
{
// Define a new class called 'System' to cause problems.
public class System { }
// Define a constant called 'Console' to cause more problems.
const int Console = 7;
const int number = 66;
static void Main()
{
// Error Accesses TestApp.Console
//Console.WriteLine(number);
}
}
但是:
global::System.Console.Writeline("This works");
對於進一步閱讀:
http://msdn.microsoft.com/en-us/library/c3ay4x3d(VS.80).aspx
謝謝。我想,因爲冒號,我無法在谷歌上獲得任何好的點擊率。但是,這個項目中沒有自定義的System類或名稱空間,所以我不知道爲什麼它需要完全限定這些系統引用。 – raven 2008-10-02 14:47:25