Стратегия спокойной и обработки ошибок

По моему скромному мнению:

, Если переменная является частью состояния экземпляра, то это должна быть переменная экземпляра - classinstance ИМЕЕТ - instancevariable.

, Если я неоднократно передавал что-то в методы экземпляра, или я нашел, что у меня было большое количество переменных экземпляра, я, вероятно, попытаюсь посмотреть на свой дизайн в случае, если я пропустил что-то или сделал плохую абстракцию где-нибудь.

Hope это помогает

12
задан Alex Che 19 October 2009 в 14:17
поделиться

2 ответа

Переопределите QApplication :: notify () и обработайте там исключения (не 100% возвращаемого значения). Вы можете "выбросить" исключения из обработчиков сигналов, но они не передаются в Qt таким образом.

bool
notify(QObject * rec, QEvent * ev)
{
  try
  {
    return QApplication::notify(rec,ev);
  }
  catch(my::Exception & e)
  {
    QMessageBox::warning(0,
                         tr("An error occurred"),
                         e.message());
  }
  catch(...)
  {
    QMessageBox::warning(0,
                         tr("An unexpected error occurred"),
                         tr("This is likely a bug."));
  }
  return false;
8
ответ дан 2 December 2019 в 22:51
поделиться

Выбрасывание исключений из обработчика событий не поддерживается в Qt. Избегайте этого, и проблем с исключениями быть не должно.

0
ответ дан 2 December 2019 в 22:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: