次の方法で共有


コンパイラ エラー C2158

'type': #pragma make_public ディレクティブは、現在テンプレートでないネイティブの型にのみサポートされています

make_public プラグマは、ネイティブの非テンプレート型にのみ適用できます。

次の例では C2158 が生成されます。

// C2158.cpp
// compile with: /clr /c
ref class A {};
#pragma make_public(A)   // C2158

template< typename T >
class B {};
#pragma make_public(B)   // C2158
#pragma make_public(B<int>)   // C2158

void C () {}
#pragma make_public(C)   // C2158

class D {};
#pragma make_public(D)   // OK