共用方式為


:: 運算子 - 命名空間別名運算子

使用命名空間別名限定符 :: 來存取別名命名空間的成員。 您只能在兩個 :: 識別碼之間使用限定符。 左側標識碼可以是命名空間別名之一、外部別名或 global 別名。 例如:

  • 使用 alias 指示詞建立的命名空間別名:

    using forwinforms = System.Drawing;
    using forwpf = System.Windows;
    
    public class Converters
    {
        public static forwpf::Point Convert(forwinforms::Point point) => new forwpf::Point(point.X, point.Y);
    }
    
  • extern 別名

  • 別名 global ,這是全域命名空間別名。 全域命名空間是命名空間,其中包含未在具名命名空間內宣告的命名空間和型別。 搭配 :: 限定符使用時, global 別名一律會參考全域命名空間,即使有用戶定義的 global 命名空間別名也一樣。

    下列範例會 global 使用 別名來存取 .NET System 命名空間,這是全域命名空間的成員。 global如果沒有別名,使用者定義System命名空間是命名空間的成員MyCompany.MyProduct,將會存取:

    namespace MyCompany.MyProduct.System
    {
        class Program
        {
            static void Main() => global::System.Console.WriteLine("Using global alias");
        }
    
        class Console
        {
            string Suggestion => "Consider renaming this class";
        }
    }
    

    備註

    global只有在關鍵詞是限定符的::左側標識符時,關鍵詞才會是全域命名空間別名。

您也可以使用 . 令牌 來存取別名命名空間的成員。 不過, . 令牌也會用來存取類型成員。 ::限定符可確保其左側標識符一律參考命名空間別名,即使有具有相同名稱的類型或命名空間也一樣。

C# 語言規格

如需詳細資訊,請參閱 C# 語言規格命名空間別名限定符一節。

另請參閱