CodingStyle/C/C++/Rules
Общие правила Etersoft
E1. Использование switch для enum
Обычно значения enum используется для разветвления алгоритма. Поскольку enum — численный тип, в таких случаях возможно и необходимо использовать switch, а не раскидистые if else. Это позволяет компилятору проверить, что все варианты enum обработаны. Конечно же, без особых оснований (и комментария о них) не следует дописывать default: в каждый switch.
См. также правило G23 — возможно, вам и не нужен switch.
Особенности для Qt
Q1. Запись connect без макросов
Есть предложение уйти от старого формата записи connect(&networkUserInfo, SIGNAL(error(ErrorAnswer)), this, SLOT(networkUserInfoError(ErrorAnswer))); и использовать вызов connect с указателями на функции. Если такой вариант не будет приводить с сложным конструкциям. Дело в том, что это позволит осуществлять проверку соответствия функций сигнала и слота на этапе компиляции.
См. полный список: CodingStyle/C/C++/MartinRules