将事件处理程序从 C# 转换为 C++/CLI

Converting event handler from C# to C++/CLI

我有一个 C# 事件处理程序,我想使用 C++/CLI,但我无法在线找到任何类似的处理程序。如果可能的话,我想保持结构有点相似。在 C++/CLI 中是否有任何文档或类似功能?

这是 C# 事件:

private void SubEvent<TEvent, TPayload>(SubscriptionToken token, Action<TPayload> payload, ThreadOption threadOption, bool foo)
        where TEvent : PubSubEvent<TPayload>, new()
    {
        //do stuff
    }

该方法签名中没有任何内容在 C++/CLI 中没有直接等效项。您应该能够在 C++/CLI 中执行与在 C# 中完全相同的操作。

private:
    generic<typename TEvent, typename TPayload> where TEvent : PubSubEvent<TPayload>, gcnew()
    void SubEvent(SubscriptionToken^ token, Action<TPayload>^ payload, ThreadOption threadOption, bool foo)
    {
        //do stuff
    }