Как добавить делегата к событию в управляемом c ++ 2010? - PullRequest
2 голосов
/ 28 января 2012

У меня есть следующий код в c #

public class Shedluer
{
    public delegate void TaskCompletedDelegate(ulong taskId);
    public static event TaskCompletedDelegate OnTaskCompleted;
}

Вот как я пытаюсь использовать его в c ++. Net:

shedluer->OnTaskCompleted+=gcnew Shedluer::TaskCompletedDelegate(OnTaskFinished);

где OnTaskFinished не является статичнымметод объявлен внутри класса ref.

Я видел несколько примеров для c ++. net 2007, но они не скомпилируются в версии 2010.

Как добавить делегата всобытие в управляемом c ++ 2010?

1 Ответ

2 голосов
/ 28 января 2012

Предположим, что OnTaskFinished находится в текущем классе, а этот класс ref имеет тип MyClass.В этом случае вы бы написали:

shedluer->OnTaskCompleted += gcnew Shedluer::TaskCompletedDelegate(this, &MyClass::OnTaskFinished);
...