# kullanma yönergesi (C++)
Meta veri ile derlenmiş bir programına alır /clr.
#using file [as_friend]
Parametreler
file
Bir MSIL .dll, .exe. netmodule, veya. obj. Örnek:#using <MyComponent.dll>
as_friend
Tüm türleri içinde olduğunu belirtir file erişilebilir. Daha fazla bilgi için bkz. Arkadaş derlemeler (C++).
Notlar
filealdığınız Microsoft Intermediate language (MSIL) dosyasını yönetilen veri ve yönetilen yapıları olabilir. Bir .dll dosyası içeren bir derleme bildirimi yeniden bildirimde başvurulan tüm .dll alınır ve oluşturmakta derleme listeleyecektir Dosya bir derleme başvurusu olarak meta.
file Bir derlemeyi içermiyor (, file bir modüldür) ve modül türü bilgileri geçerli (assembly) uygulamasında kullanmak istemiyorsanız, yalnızca modül montaj; bölümü olduğunu belirten seçeneğiniz vardır kullanmak /assemblymodule. Sonra modülünde türler derlemeye başvuruda herhangi bir uygulama için kullanılabilir olacaktır.
Kullanılacak alternatif #using olan /fu derleyici seçeneği.
.exe derlemeler geçirilen #using birlikte derlenmesi gereken /clr:safe veya /clr:pure, ya da herhangi diğer Visual Studio derleyiciler (Visual Basic veya Visual C#, örneğin). Meta veri ile derlenmiş bir .exe derlemesinden almayı denemeden /clr bir dosya yükü özel neden olur.
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.
Derleyici derleme (modül değil) yazıyla tanımak için bu, örneğin, türünün bir örneği tanımlayarak yapabilirsiniz türü çözümlenemedi zorlanacak gerekir. Varsa diğer yolları için derleyici derleme türü adları çözümlemek için bir derlemede türünden devralan, tür adı sonra derleyici bilinen haline.
Kullanılan kaynak kodundan yerleşik meta verileri alırken __declspec(thread), iş parçacığı semantiği meta verilerde kalıcı olmaz. Örneğin, ile bildirilen bir değişken __declspec(thread), derlenmiş derleme için bir program içinde.net Framework ortak dil çalışma zamanı ve daha sonra üzerinden alınan #using, artık __declspec(thread) semantiği değişken üzerinde.
Alınan tüm türleri (yönetilen ve doğal) tarafından başvurulan bir dosyada #using kullanılabilir, ancak derleyici değerlendirir doğal türlerine değil tanımları bildirimleri gibi.
mscorlib.dll otomatik olarak başvurulan 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 yol boyunca başvuruları arar:
Belirtilen yol #using ifadesi.
Geçerli dizin.
.net Framework sistem dizinidir.
İle eklenen dizinleri /AI derleyici seçeneği.
LIBPATH ortam değişkeni üzerindeki dizinler.
Örnek
(c) derleme oluşturmak ve kendine başvuruyor başka bir derleme (a) (b) derleme başvurusu, açıkça A'ın birini kullanmazsanız derleme a 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şvuran değil program using_assembly_A.cpp içinde tanımlanan türlerinden herhangi birini kullanmadığı için derleyici hata vardır.
// using_assembly_C.cpp
// compile with: /clr
#using "using_assembly_B.dll"
int main() {
B b;
b.Test();
}