@anno, boot:: signal, , , , , C. boost:: signal tutorial, , .
:
, , . :
class NewsItem { };
boost::signal<void (const NewsItem&)> deliverNews;
deliverNews - , a NewsItem .
( boost:: bind):
, , , deliverNews. , , :
struct NewsMessageArea : public MessageArea
{
public:
void displayNews(const NewsItem& news) const
{
messageText = news.text();
update();
}
};
NewsMessageArea newsMessageArea = new NewsMessageArea();
deliverNews.connect(boost::bind(&NewsMessageArea::displayNews, newsMessageArea, _1));
, , boost:: signal
, , , newsMessageArea, deliverNews? , . , Boost.Signals NewsMessageArea, , newsMessageArea , newsMessageArea . NewsMessageArea boost:: signals:: trackable, :
struct NewsMessageArea : public MessageArea, public boost::signals::trackable
{
};
: , Boost.Bind , , boost:: bind, .