Я бы сказал, для меня это, вероятно, 16. Избегайте макросов. Я обнаружил, что есть много вещей, которые я могу делать только с макросами (особенно встраивание __FILE__ и __LINE__ в выражения), и во многих случаях мне нужно компактное выражение, которое работает во внешнем контексте функции (например, проверка кодов результата и возврат). ). В результате мой код, как правило, обильно обсыпается утверждениями в форме макросов, например, поэтому я бы сказал, что это тот, который я немного игнорирую.
Тем не менее, я бы отказался от большинства своих применений, если бы язык допускал альтернативные, аналогично компактные выражения тех же понятий, но, поскольку это не так, макросы будут существовать долгое время.
Я должен добавить, я не хочу сказать, что я считаю это предложение плохим или плохо следовать ему, когда у вас есть альтернатива. Я просто обнаружил, что в итоге использую много макросов, обычно потому, что альтернативы нет.