Events 包装boost::带有C++/CLI类事件

Events 包装boost::带有C++/CLI类事件,events,boost,c++-cli,Events,Boost,C++ Cli,我试图弄清楚如何用C++/CLI类事件包装非托管类的boost::function成员(用作事件回调)。我无法控制非托管类。我所能做的就是找出如何正确编写C++/CLI类 以下是示例非托管类: class X { public: boost::function<void (double)> XChanged;; void Set(double x) { XChanged(x) } }; X类 { 公众: boost::函数交换;;

我试图弄清楚如何用C++/CLI类事件包装非托管类的boost::function成员(用作事件回调)。我无法控制非托管类。我所能做的就是找出如何正确编写C++/CLI类

以下是示例非托管类:

class X
{
public:
    boost::function<void (double)> XChanged;;

    void Set(double x)
    {
        XChanged(x)
    }
};
X类
{
公众:
boost::函数交换;;
空集(双x)
{
交换(x)
}
};

我尝试过很多事情,但总是遇到问题。我相信这比看起来容易。任何帮助都将不胜感激

CLI可能不允许您将boost::函数声明为静态成员。将其设置为指针:

boost::function*XChanged

然后在构造函数和终结器中分配/取消分配,并使用(*XChanged)(arg)调用它