CodingStyle/C/C++/Rules

Материал из Etersoft wiki
Перейти к: навигация, поиск

Общие правила Etersoft

E1. Использование switch для enum

Обычно значения enum используется для разветвления алгоритма. Поскольку enum — численный тип, в таких случаях возможно и необходимо использовать switch, а не раскидистые if else. Это позволяет компилятору проверить, что все варианты enum обработаны. Конечно же, без особых оснований (и комментария о них) не следует дописывать default: в каждый switch.

См. также правило G23 — возможно, вам и не нужен switch.

E2. Использование специальных типов

При разработке программы можно и нужно создавать специальные типы, и стараться избежать использования основных типов с помощью следования запрету на невыделенную в отдельную функцию конвертацию представления данных.

Особенности для Qt

Q1. Запись connect без макросов

По возможности надо уйти от старого формата записи

connect(&networkUserInfo, SIGNAL(error(ErrorAnswer)), this, SLOT(networkUserInfoError(ErrorAnswer)));

и использовать вызов connect с указателями на функции. Конечно, если такой вариант не будет приводить к сложным конструкциям.

Дело в том, что это позволит осуществлять проверку соответствия функций сигнала и слота на этапе компиляции.


См. полный список: CodingStyle/C/C++/MartinRules