編譯器警告 (層級 1) C4692
'function': 非私用成員的簽章含有組件私用原生類型 'native_type'
可以在組件之外看見的型別,含有其簽章中包含在組件之外不可見之原生型別的成員函式。 因此,如果包含其中的型別是在組件之外具現化,就不應該呼叫成員函式。
如需詳細資訊,請參閱型別可見性。
此警告在預設情況下為關閉的。 如需詳細資訊,請參閱預設為關閉的編譯器警告。
範例
下列範例會產生 C4692。
// C4692.cpp
// compile with: /W1 /c /clr
#pragma warning(default:4692)
class Private_Native_Class {};
public class Public_Native_Class {};
public ref class Public_Ref_Class {
public:
void Test(Private_Native_Class *) {} // C4692
void Test2(Public_Native_Class *) {} // OK
};