Aracılığıyla paylaş


Nasıl yapılır: İç İşaretçiler ve Yerel İşaretçilerle İşlevleri Tekrar Yükleme (C++/CLI)

İşlevler, parametre türünün iç işaretçi mi yoksa yerel işaretçi mi olduğuna bağlı olarak aşırı yüklenebilir.

Önemli

Bu dil özelliği derleyici seçeneği tarafından /clr desteklenir, ancak derleyici seçeneği tarafından /ZW desteklenmez.

Örnek

Kod

// interior_ptr_overload.cpp
// compile with: /clr
using namespace System;

// C++ class
struct S {
   int i;
};

// managed class
ref struct G {
   int i;
};

// can update unmanaged storage
void f( int* pi ) {
   *pi = 10;
   Console::WriteLine("in f( int* pi )");
}

// can update managed storage
void f( interior_ptr<int> pi ) {
   *pi = 10;
   Console::WriteLine("in f( interior_ptr<int> pi )");
}

int main() {
   S *pS = new S;   // C++ heap
   G ^pG = gcnew G;   // common language runtime heap
   f( &pS->i );
   f( &pG->i );
};
in f( int* pi )
in f( interior_ptr<int> pi )

Ayrıca bkz.

interior_ptr (C++/CLI)