Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > Указатель на функцию член класса |
Автор: BasilL 13.1.2011, 11:41 | ||
Всем доброго дня! Читал подобные темы, но что-то не пойму все равно; раньше не приходилось с таким дел иметь. Допустим имеется класс
Можно использовать static для этой функции, но очень не хотелось бы, т.к. в расчете ей потребуются ряд элементов и методов класса. |
Автор: mes 13.1.2011, 14:48 |
ну так может стоило показать, что это такое ? или форумчанам нужно самим лезть в справочник ? ![]() Добавлено через 2 минуты если у той функции есть void* для передачи контекста, то для простоты решения, делайте статическую функцию-адаптер, в которой будете вызывате метод, кастя воид* к указателю на Ваш класс.. |
Автор: Cheloveck 13.1.2011, 15:08 | ||
BasilL,
Если я правильно нашёл, то тут без колдовства не обойтись. Переменная является просто указателем на функцию, указатель на метод туда не проканает. Можно попробовать капнуть в сторону boost.bind. http://www.network-theory.co.uk/docs/gslref/Providingthefunctiontosolve.html |
Автор: mes 13.1.2011, 15:28 |
хм.. а как ? ![]() Добавлено через 6 минут и 4 секунды http://liveworkspace.org/code/f3ee5f16c898d92b8b005f46d06d1339 |
Автор: Cheloveck 13.1.2011, 16:29 |
Кабы знал как, то и написал бы =) В бинде SQLite под плюсы колбеки обёрнуты в методы именно boost.bind. Руки не дошли просмотреть подробности. |