Я знаю основные правила, используйте inline
, enum
и const
вместо #define
, это не то, что я после этого вопроса. Я хочу знать, что считается приемлемым сценарием, в котором вы бы использовали макрос #define
и как, на С++.
Пожалуйста, не ставьте вопрос или ссылки на вопросы "define vs const" или "препроцессор против компилятора", и я уже прошел через эффективный С++ Скоттом Мейерсом, и я знаю преимущества одного над другим.
Однако после часов и часов серфинга в сети я чувствую, что #define рассматривается как некоторый аутсайдер на С++, но я уверен, что должен быть случай, когда он может быть приемлемым, даже желательно, используй это.
Чтобы получить мяч, я предполагаю, что один сценарий, который я мог бы подумать, заключается в создании макроса DEBUG
, который на его основе позволяет печатать и еще не весь код для целей отладки.