using 指示詞 (C# 參考)
更新:2007 年 11 月
using 指示詞有兩種用法:
允許在命名空間中使用型別,如此一來,您就不需在該命名空間內限定型別的使用:
using System.Text;
建立命名空間或型別的別名 (Alias)。這稱為「using 別名指示詞」(Using Alias Directive)。
using Project = PC.MyCompany.Project;
using 關鍵字也可用來建立 using 陳述式,這個陳述式可確保正確處理檔案和字型這類的 IDisposable 物件。如需詳細資訊,請參閱 using 陳述式。
備註
using 指示詞的範圍限於它所出現的檔案。
建立 using 別名,可讓您更容易限定命名空間或型別的識別項。using 別名指示詞的右邊必須是完整的型別,不管其前方的 using 指示詞為何都一樣。
建立 using 指示詞以便在使用命名空間裡的型別時,不必指定命名空間。using 指示詞不讓您存取所指定之命名空間中的任何巢狀命名空間。
命名空間有兩種類型:使用者自訂與系統定義。使用者定義命名空間是在程式碼裡定義的命名空間。如需系統定義之命名空間的清單,請參閱 .NET Framework 類別庫參考。
如需在其他組件中參考方法的範例,請參閱建立和使用 C# DLL。
範例 1
說明
下列範例示範如何定義和使用命名空間的 using 別名:
程式碼
namespace PC
{
// Define an alias for the nested namespace.
using Project = PC.MyCompany.Project;
class A
{
void M()
{
// Use the alias
Project.MyClass mc = new Project.MyClass();
}
}
namespace MyCompany
{
namespace Project
{
public class MyClass { }
}
}
}
註解
using 別名指示詞的右邊不能有開放式泛型型別。例如,您不能為 List<T> 建立 using 別名,但是可以為 List<int> 建立 using 別名。
範例 2
說明
下列範例示範如何定義類別的 using 指示詞及 using 別名:
程式碼
using System;
// Using alias for a class.
using AliasToMyClass = NameSpace1.MyClass;
namespace NameSpace1
{
public class MyClass
{
public override string ToString()
{
return "You are in NameSpace1.MyClass";
}
}
}
namespace NameSpace2
{
class MyClass
{
}
}
namespace NameSpace3
{
// Using directive:
using NameSpace1;
// Using directive:
using NameSpace2;
class MainClass
{
static void Main()
{
AliasToMyClass somevar = new AliasToMyClass();
Console.WriteLine(somevar);
}
}
}
// Output: You are in NameSpace1.MyClass
C# 語言規格
如需詳細資料,請參閱 C# 語言規格中的下列章節:
- 9.3 Using 指示詞