Aracılığıyla paylaş


#using Yönergesi (C++)

Meta veriler ile derlenmiş bir programa aktarır /CLR.

#using file [as_friend]

Parametreler

  • file
    Bir MSIL .dll, .exe, .netmodule, veya. obj.Örnek:

    #using <MyComponent.dll>

  • arkadaş_olarak
    Tüm türleri içinde olduğunu belirtir file erişilebilir. Daha fazla bilgi için bkz. Arkadaş derlemeler (C++).

Notlar

file yönetilen veri ve yönetilen yapılar aldığınız bir Microsoft Ara dili (MSIL) dosyası olabilir.Bir derleme bildirimi bir .dll dosyası içeriyorsa sonra listesi içinde başvurulan tüm .dll alınır ve oluşturduğunuz derleme listeleyecektir Dosya derleme başvurusu olarak meta verilerde.

Yoksa file bir derlemeyi içermiyor (varsa file bir modüldür) ve modül türü bilgileri geçerli (a derlemesi) uygulamasında kullanmak istemediğiniz yalnızca modülü; derlemesinin bir parçası olduğunu belirten seçeneği varsa kullanmak /ASSEMBLYMODULE.Modülünde türler derlemeye başvuruda herhangi bir uygulama için kullanılabilir olması.

Kullanmak için alternatif #using olan /FU derleyici seçeneği.

.exe derlemeler geçirilen #using birlikte derlenmesi gereken /clr:safe veya /clr:pure, veya diğer Visual Studio derleyiciler (Visual Basic veya Visual C#, örneğin). İle derlenmiş bir .exe derleme meta veri almayı denemeden /clr bir dosya yükleme özel durumuna neden.

[!NOT]

İle başvurulan bileşen #using beklenmeyen sonuçlar vermek bir istemci uygulaması neden derleme zamanında alınan dosya farklı bir sürümünü çalıştırabilirsiniz.

Derleyicinin (modül değil) derlemede bir türü tanıması için, türü çözümlemeye zorlanması gerekir. Bunu türün bir örneğini tanımlayarak yapabilirsiniz.Derleyiciye ilişkin bir derlemede bulunan tür adlarını çözmek için başka yollar da vardır: örneğin, derleme içinde bulunan bir türden devralıyorsanız, tür adı sonra derleyici tarafından bilinecektir.

Kullanılan kaynak kodundan oluşturulan meta veri içe aktarma sırasında __declspec(thread), iş parçacığı semantiği meta verilerde kalıcı değildir.Örneğin, ile bildirilen bir değişken __declspec(thread), derlenmiş, .NET Framework ortak dil çalışma zamanı için bir yapıdır ve sonra aracılığıyla bir programda #using, artık __declspec(thread) semantiği değişken.

İçe aktarılan tüm türlerinde (yönetilen ve yerel) tarafından başvurulan bir dosya #using kullanılabilir, ancak derleyici bildirimleri değil tanımları yerel türler değerlendirir.

mscorlib.dll otomatik olarak başvuru ile derlerken /clr.

LIBPATH ortam değişkeni derleyici geçirilen dosya adları çözümlemeye çalışırken aranır dizinleri belirtir #using.

Derleyici aşağıdaki yolda başvuruları arar:

  • Belirtilen yol #using ifadesi.

  • Geçerli dizin.

  • .NET Framework sistem dizini.

  • İle eklenen dizinleri /AI derleyici seçeneği.

  • LIBPATH ortam değişkeni dizinleri.

Örnek

(C) bir derleme oluşturmak ve kendisini başka bir derlemeye (A) başvuran bir derlemeye (B) başvuru, derleme A açıkça A'ın birini kullanmadığınız sürece açıkça başvurmak gerekmez C. türleri

// using_assembly_A.cpp
// compile with: /clr /LD
public ref class A {};

// using_assembly_B.cpp
// compile with: /clr /LD
#using "using_assembly_A.dll"
public ref class B {
public:
   void Test(A a) {}
   void Test() {}
};

Aşağıdaki örnekte, using_assembly_A.dll başvuru değil program using_assembly_A.cpp içinde tanımlanan türlerinden herhangi birini kullanmadığı için derleyici hata yok.

// using_assembly_C.cpp
// compile with: /clr
#using "using_assembly_B.dll"
int main() {
   B b;
   b.Test();
}

Ayrıca bkz.

Başvuru

Ön işlemci Yönergeleri