Я пишу статьи, посвященные написанию качественного кода и про поиск ошибок с помощью инструментов статического анализа. Однообразие наскучивает, хочется пошалить. А давайте все вместе напишем статью "100 вредных советов для С++ программиста". Я начну, а вы подхватите.
- Всюду используйте вложенные макросы. Так текст программы станет короче, и вы сохраните больше места на жестком диске. Заодно это развлечёт ваших коллег при отладке.
- Если в строковом литерале вам нужен символ табуляции, смело жмите кнопку tab. Оставьте t для яйцеголовых. Не парься.
- Смело сравнивайте числа с плавающей точкой с помощью оператора ==. Раз есть такой оператор, значит им нужно пользоваться.
- Используйте для переменных имена из одной — двух букв. Так в одну строчку, помещающуюся на экране, можно уместить более сложное выражение.
- Используйте числа в программировании. Так ваша программа будет выглядеть умнее и солиднее. Согласитесь, что такие строки смотрятся хардкорно: qw = ty / 65 — 29 * s;
- Отключи предупреждения компилятора. Они отвлекают от работы и мешают писать компактный код.
- Не мешкай и не тормози. Сразу бери и используй аргументы командной строки. Например, так: char buf[100]; strcpy(buf, argv[1]);. Проверки делают только параноики, неуверенные в себе и в людях.
- Если что-то не работает, то, скорее всего, глючит компилятор. Попробуй поменять местами некоторые переменные и строки кода.
- Undefined behavior это страшилка на ночь для детей. На самом деле его не существует. Если программа работает как вы ожидали, значит она правильная. И обсуждать здесь нечего, точка.
- memmove — лишняя функция. Всегда и везде используйте memcpy.
- Помни, что размер указателя это всегда 4 байта. Используй смело это число. Число 4 смотрится намного изящнее, чем корявое выражение с оператором sizeof.
- Нет смысла проверять, удалось ли выделить память. На современных компьютерах её много. А если не хватило, то и незачем дальше работать. Пусть программа упадёт. Все равно уже больше ничего сделать нельзя.
- Во всех старых книгах для хранения размеров массивов и для организации циклов использовались переменные типа int. Так и делай. Не стоит нарушать традиции.
- Используй при написании кода невидимые символы. Пусть ваш код работает магическим образом. Это прикольно.
- Добавляй разные вспомогательные функции и классы в пространства имён std. Ведь для тебя эти функции и классы стандартные и базовые, а раз так, им самое место в std.
Оставляйте комментарии, а позже оформлю всё это в виде единого текста. Думаю, будет прикольно. Присоединяетесь!
Автор: Andrey Karpov