rg45 пишет:
> Здравствуйте, Vit1251, Вы писали:
>
> V>Добрый день!
>
> V>Нашел в интернете пример с использованием событий. Немогу пока понять
> V>как это работает. Подскажите пожалуйста где почитать доходчиво о
> V>событиях в C++.
>
> Концептуально — это шаблон (паттерн) проектирования, известный в ООП под названием Наблюдатель (Observer). В разных языках эта концепция может быть реализована по-разному. В C#, например, механизм событий встроен в язык и основан на делегатах. В C++ можно использовать бустовскую реализацию boost_signals. Последние, кстати, прекрасно документированы (документация входит в состав библиотеки).
>
> К сожалению, из твоего вопроса не совсем понятно, что именно тебе непонятно
Неплохо было бы, если бы ты привел ссылку и сформулировал вопрос более конкретно.
В программировании в C++ под UNIX в библиотеке Xlib есть такая
замечательная штка как handler_event() он получаеться когда
данному окну приходит событие. Вот я никак понять немогу как
это организовано. Вроде понятно что просто метод вызываеться,
но как определяеться что именно этому классу и именно этому
экземпляру. Или при приходе события оно отправляеться всем
экземплярам — так это ж расточительно очень? Тут никаких ресурсов
не напасешься. Хотя вроде сталкивался в Qt с такой конструкцией как
connect_signal. Вот хочу поподробнее разузнать об устройстве этого
изнутри. С точки зрения концептуальной новизны и отличия вызова
просто функции по указателю.
Posted via RSDN NNTP Server 2.1 beta