Какие рекомендации вы придерживаетесь для улучшения общего качества вашего кода? У многих людей есть правила о том, как писать код на С++, который (предположительно) затрудняет ошибку. Я видел, как люди настаивали на том, что за каждым оператором if
следует блок скобок ({...}
).
Меня интересуют, какие ориентиры придерживаются другие люди, и причины, лежащие в их основе. Я также заинтересован в рекомендациях, которые, по вашему мнению, являются мусором, но обычно проводятся. Может кто-нибудь предложить несколько?
Чтобы получить мяч, я расскажу несколько, чтобы начать с:
- Всегда используйте фигурные скобки после каждого оператора
if
/else
(см. выше). Обоснование этого заключается в том, что не всегда легко определить, является ли один оператор фактически одним оператором или макросом препроцессора, который расширяется до более чем одного оператора, поэтому этот код сломается:
// top of file: #define statement doSomething(); doSomethingElse // in implementation: if (somecondition) doSomething();
но если вы используете фигурные скобки, то он будет работать, как ожидалось.
- Использовать макросы препроцессора для условной компиляции ТОЛЬКО. макросы препроцессора могут вызывать все виды ада, поскольку они не позволяют использовать правила С++. Я много раз заходил на мель из-за макросов препроцессора с общими именами в файлах заголовков. Если вы не будете осторожны, вы можете причинить всевозможные хаосы!
Теперь вам.