다음을 통해 공유


방법: 내부 포인터 및 네이티브 포인터를 사용하여 함수 오버로드(C++/CLI)

매개 변수형식이 내부포인터인지원시포인터인지에 따라 함수를 오버 로드할 수 있습니다.

중요중요

이 언어기능은 지원 하지는 /clr컴파일러옵션을 있지만으로 /ZW컴파일러옵션.

예제

wzkbta4k.collapse_all(ko-kr,VS.110).gif코드

// 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 );
};

wzkbta4k.collapse_all(ko-kr,VS.110).gifOutput

in f( int* pi )
in f( interior_ptr<int> pi )

참고 항목

참조

interior_ptr(C++/CLI)