Udostępnij za pośrednictwem


make_public

Wskazuje, że typ natywny powinien mieć publiczny zestaw ułatwień dostępu.

#pragma make_public(type)

Parametry

type jest nazwą typu, który ma posiadać publiczny zestaw ułatwień dostępu.

Uwagi

make_public jest użyteczne w przypadku gdy typ natywny, którego ma dotyczyć odwołanie, jest z pliku .h, którego nie można zmienić.Jeśli typu natywny ma być użyty w podpisie funkcji publicznej w typie z widocznością publiczną zestawu, typ natywny musi również posiadać publiczną dostępność lub kompilator wyświetli ostrzeżenie.

make_public musi być określona w zakresie globalnym i działa tylko w od punktu, w którym jest zadeklarowana, do końcu pliku kodu źródłowego.

Typ natywny może być jawnie lub niejawnie prywatny; zobacz Widoczność typów, aby uzyskać więcej informacji.

Przykład

Poniższy przykład jest zawartością pliku .h, który zawiera definicje dla dwóch struktur natywnych.

// make_public_pragma.h
struct Native_Struct_1 { int i; };
struct Native_Struct_2 { int i; };

Poniższy przykładowy kod używa pliku nagłówka i pokazuje, że dopóki struktura natywna nie zostanie oznaczona jako publiczna, za pomocą make_public, kompilator będzie generował ostrzeżenie, gdy nastąpi próba użycia struktury natywnej w podpisie funkcji publicznej w publicznym typie zarządzanym.

// make_public_pragma.cpp
// compile with: /c /clr /W1
#pragma warning (default : 4692)
#include "make_public_pragma.h"
#pragma make_public(Native_Struct_1)

public ref struct A {
   void Test(Native_Struct_1 u) {u.i = 0;}   // OK
   void Test(Native_Struct_2 u) {u.i = 0;}   // C4692
};

Zobacz też

Informacje

Dyrektywy pragma i słowo kluczowe __Pragma