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