![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
Ravenan |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 24.5.2006 Где: Киев, Украина Репутация: нет Всего: нет |
baronp,
Спасибо, работает! ![]() |
|||
|
||||
MAKCim |
|
||||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
странно что у тебя
такое прокатывает
тут создается временный объект, но foobar принимает ссылку на Callback, а по стандарту возможна только константная ссылка на временный объект -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
||||
|
|||||
Ravenan |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 24.5.2006 Где: Киев, Украина Репутация: нет Всего: нет |
MAKCim,
еще раз доказывает что каждый компилятор такое моменты решает как ему угодно а не по стандарту. Все прекрасно работало пока не уничтожался этот временный объект |
|||
|
||||
Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
MAKCim, одно из нестандартных расширений MSVC (автор, по всей видимости, пользуется именно им).
Но таки лучше параметр сделать константной ссылкой и оператор () тоже константным. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
имхо, лучше ими не пользоваться ввиду непереносимости в общем случае -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
takedo |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 501 Регистрация: 1.6.2005 Репутация: 1 Всего: 3 |
Ravenan,
если пишешь приложение оконное - стопудов неправильная!!! Я также как и ты сперва поизвращался с передачей адреса функции класса - ввсё нормально заработало, но потом ещё раз проанализировав(а информацию я брал в какой-то статье на RSDN, называлась она что-то типа самые быстрые делегаты на C++) я понял, что это неприемлемо для оокнонных приложений, потому как каждый компилятор делает такие вещи по своему(см. статью которую ты ещё не нашел ![]() ![]() Добавлено @ 06:20 Странно, помню, что читал совершенно другую статью, а нашёл сейчас вот эту ![]() http://www.rsdn.ru/article/cpp/delegates.xml -------------------- я не гольфист - я хоккеист |
|||
|
||||
Ravenan |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 24.5.2006 Где: Киев, Украина Репутация: нет Всего: нет |
takedo,
http://www.rsdn.ru/article/cpp/delegates.xml - довольно познавательная статья. Прочитай я ее раньше - не напрягал бы всех ![]() Насчет сообщений идея интересная... Приложение у меня игровое, специфика у него следующая: есть основной класс и класс обработки ввода (на DirectInput). Обработку ввода мне показалось логичным вынести в отдельный класс так как ее реализация может менятся. Хотелось бы в классе обработки ввода иметь хеш-таблицу из пар клавиша-обработчик и вызывать обработчики по нажатию. Такой подход мне показался наиболее логичным. Конечно можно реализовать все по другому так что делегаты не понадобятся, но я исхожу из языково-независимого проектирования архитектуры приложения. Думаю что возникшая у меня ситуация не редка и при проектировании бизнес-приложений, потому интересно как обычно решают эту проблему. |
|||
|
||||
takedo |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 501 Регистрация: 1.6.2005 Репутация: 1 Всего: 3 |
Ravenan, дело твоё
![]() -------------------- я не гольфист - я хоккеист |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |