Название: Error (no matching function for call to) Отправлено: demaker от Октябрь 13, 2013, 17:11 Выдает ошибку
no matching function for call to 'CLayer0::SetOnReceive(<unresolved overloaded function type>)' Скажите как ее убрать? Название: Re: Error (no matching function for call to) Отправлено: LisandreL от Октябрь 13, 2013, 17:36 Разобраться что в вызове этой функции не так в параметрах указали.
Название: Re: Error (no matching function for call to) Отправлено: mutineer от Октябрь 13, 2013, 17:49 Либо вызывать правильную функцию, либо реализовать функцию, которую вызываешь
Название: Re: Error (no matching function for call to) Отправлено: demaker от Октябрь 13, 2013, 17:56 Код
Что тут неправильного??? Название: Re: Error (no matching function for call to) Отправлено: mutineer от Октябрь 13, 2013, 18:14 CommFT::OnRecive() имеет прототип void (CommFT::*FunctionPtr)(void *, unsigned), что не совпадает с типом параметра SetOnRecive()
Ну и для вызова функции по такому указателю нужен будет объект класса CommFT12 Название: Re: Error (no matching function for call to) Отправлено: demaker от Октябрь 13, 2013, 18:27 Ну и для вызова функции по такому указателю нужен будет объект класса CommFT12 Вызов происходит в самом объекте CommFT12что не совпадает с типом параметра SetOnRecive() Как это не совпадает ??? Там же указатель на функцию.Название: Re: Error (no matching function for call to) Отправлено: mutineer от Октябрь 13, 2013, 18:28 void (CommFT::*FunctionPtr)(void *, unsigned)
и void (*FunctionPtr)(void *, unsigned) Видишь разницу? Название: Re: Error (no matching function for call to) Отправлено: demaker от Октябрь 13, 2013, 18:34 И что делать...
Название: Re: Error (no matching function for call to) Отправлено: mutineer от Октябрь 13, 2013, 18:35 менять тип указателя, использовать статическую функцию, использовать интерфейс вместо указателя на метод.
Что делать зависит от задачи Название: Re: Error (no matching function for call to) Отправлено: demaker от Октябрь 13, 2013, 18:41 Я пертеписываю прогу, которая была написана на Билдере кем-то и давно.
теперь понятно зачем нужно было _closure Код: typedef void (__closure *FunctionPtr)(void *DataPtr, unsigned DataSize) Есть какие-нибудь аналоги _closure? Название: Re: Error (no matching function for call to) Отправлено: mutineer от Октябрь 13, 2013, 18:46 Да, это такая билдеровская магия. Обходи
Название: Re: Error (no matching function for call to) Отправлено: demaker от Октябрь 13, 2013, 18:52 Название: Re: Error (no matching function for call to) Отправлено: Alex Custov от Октябрь 13, 2013, 18:55 Может помочь? статический метод имеет сигнатуру как обычная функция, поэтому да. Название: Re: Error (no matching function for call to) Отправлено: mutineer от Октябрь 13, 2013, 19:14 Если внутри не надо обращаться к this, то может Название: Re: Error (no matching function for call to) Отправлено: demaker от Октябрь 13, 2013, 19:20 Если внутри не надо обращаться к this, то может Т.е к элементам, которые описаны внутри класса?А если надо, какие еще есть варианты? Название: Re: Error (no matching function for call to) Отправлено: mutineer от Октябрь 13, 2013, 19:31 может тебе вообще не нужен этот указатель, а можно обойтись сигналом
мы тут заглядывать сквозь пространство не умеем Название: Re: Error (no matching function for call to) Отправлено: demaker от Октябрь 13, 2013, 19:33 Идея :)
Может |