Ошибка C3374: невозможно получить адрес «ProjectName :: on_mouse», если не создан экземпляр делегата - PullRequest
0 голосов
/ 25 июля 2011

Я работаю над алгоритмом определения цвета openCV camShift.Когда я пытаюсь вызвать cvSetMouseCallback( "CamShiftDemo",&ProjectName::on_mouse,0); функцию в основном методе, это дает мне упомянутое выше C3374 Ошибка в VC ++.

Это функция on_mouse, которую я использую

static void on_mouse( int event, int x, int y, int flags,void* param )
{
    //function implementation 
}

Я могуНе могу понять, в чем именно заключается проблема. Некоторые форумы говорят, что это из-за управляемых и неуправляемых кодов C ++.Может ли кто-нибудь помочь мне избавиться от этой проблемы?Пожалуйста, поделитесь со мной примером кода, чтобы решить эту проблему.

1 Ответ

0 голосов
/ 26 июля 2011

Назначьте его соответствующему делегату, а не назначайте его какому-либо указателю на функцию.

http://msdn.microsoft.com/en-us/library/5408cs95(v=vs.80).aspx

...