Краткое описание классов

Краткое описание классов

signal – cобытие (детали реализации опущены)

template <class Arg> // Arg – тип аргумента функции обработчика

class signal {

public:

 // Инициировать событие

 void raise(

  Arg arg // Арумент arg будет передан в обработчики события

 );

};

slot – переходник для обработки события в классе-обработчике (детали реализации опущены)

class slot {

public:

 // установить связь с событием и обработчиком

 template <

  class Owner, // класс-обработчик

  class Arg // Тип аргумента события.

 >

 void init(

  signal<Arg>&sig, // событие

  void (Owner::*mpfn)(Arg), // функция обработчик

  Owner *This // обьект обработчик

 );

 // установить связь с событием и обработчиком для случая signal<void>

 template <

  class Owner // класс-обработчик

 >

 void init(

  signal<void>&sig, // событие

  void (Owner::*mpfn)(), // функция обработчик

  Owner *This // обьект обработчик

 );

 // разорвать связь

 void clear();

};


Следующая глава >>