編譯器錯誤 C3909
WinRT 或 Managed 事件宣告必須發生在 WinRT 或 Managed 類型中
在原生類型中宣告 Windows 執行階段事件或 managed 事件。 若要修正這個錯誤,請在 Windows 執行階段類型或 managed 類型中宣告事件。
如需詳細資訊,請參閱 事件。
下列範例會產生 C3909,並顯示如何修正此問題:
// C3909.cpp
// compile with: /clr /c
delegate void H();
class X {
event H^ E; // C3909 - use ref class X instead
};
ref class Y {
static event H^ E {
void add(H^) {}
void remove( H^ h ) {}
void raise( ) {}
}
};