- 01
 - 02
 - 03
 - 04
 - 05
 - 06
 - 07
 - 08
 - 09
 - 10
 - 11
 - 12
 - 13
 - 14
 - 15
 - 16
 - 17
 - 18
 - 19
 - 20
 - 21
 - 22
 - 23
 - 24
 - 25
 - 26
 - 27
 - 28
 - 29
 
void keyStart(int key,void (*func)())
{
  while(SDL_PollEvent(&keyEvent))
  {
    switch(keyEvent.type)
    {
      case SDL_KEYDOWN:
        switch(keyEvent.key.keysym.sym)
        {
          /*Выход*/
          case SDLK_ESCAPE:
          func();
          break;
          case SDLK_w:
          func();
          break;
          case SDLK_q:
          func();
          break;
          default:
          break;
        }
      break;
      default:
      break;
    }
  }
      
}
                                
 Follow us!
> break;
Функция высшего беспорядка.
Поясню для неопытных (Это не вам, Bormand). По определению функция высшего порядка - функция принимающая в качестве параметра или возвращающая результатом другую функцию. Хотя тут скорее надо было назвать не func, а proc или action, ибо от него есть только сайд эффекты. Функцией язык её назвать не поворачивается.
Конечно. Но с осмысленными комментариями к этим меткам весьма неплохо читается.
Как-то так это выглядело:P.S. Да и никто в здравом уме не будет править выхлоп генератора, он же все перетрет при следующей выгрузке из базы. Эти коменты туда писались для удобства отладки генератора.
Обожаю астериск (хоть и не видел его с 2007-го года). Офигенная штука. Помню, написал автодозвонщик с веб-интерфейсом. Указываешь номер абонента, время; он создаёт файл дозвонки и соединяет абонента, неосмотрительно поднявшего трубку, с gsm-файлом с дикими воплями. При астерисковой агрессивной политике дозвона - офигенная штука. Как-то один упоротый клиент был подписан на час ночи, после первого дозвона в логах пошли сообщения о невозможности дозвониться.
А ещё звонки в федеральные города через сипнет были халявными. Золотые времена.