1. C++ / Говнокод #8532

    +161

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    #if DEBUG == 2
    	#define INFO(message) (util::debug::print(TYPE_INFO, (message), __func__, __LINE__))
    	#define WARNING(message) (util::debug::print(TYPE_WARNING, (message), __func__, __LINE__))
    	#define ERROR(message) (util::debug::print(TYPE_ERROR, (message), __func__, __LINE__))
    #elif DEBUG == 1
    	#define INFO(message) (util::debug::print(TYPE_INFO, (message), __func__))
    	#define WARNING(message) (util::debug::print(TYPE_WARNING, (message), __func__))
    	#define ERROR(message) (util::debug::print(TYPE_ERROR, (message), __func__))
    #elif DEBUG == 0
    	#define INFO(message) (util::debug::print(TYPE_INFO, (message)))
    	#define WARNING(message) (util::debug::print(TYPE_WARNING, (message)))
    	#define ERROR(message) (util::debug::print(TYPE_ERROR, (message)))
    #else
    	/* Default defines, uses if logging is disable */
    	#define INFO()
    	#define WARNING()
    	#define ERROR()
    #endif

    Запостил: rootick, 16 Ноября 2011

    Комментарии (10) RSS

    • а ведь еще можно DEBUG == 3, чтобы еще и __FILE__ указывал!
      Ответить
    • лучше
      #else
      /* Default defines, uses if logging is disable */
      #define INFO(message)
      #define WARNING(message)
      #define ERROR(message)
      #endif
      Ответить
    • > logging is disable
      грамотеи
      Ответить
    • тут весь говнокод спрятан в этих строчках
      #define INFO()
      #define WARNING()
      #define ERROR()
      надо их приводить к какой нибудь пустой команде, типа (void)0; или __noop или просто void
      ибо любители писать так
      if (expression) ERROR()
      могут сильно подпортить нервы
      хотя в данном случае оно не скомпилится без ; в дебаге
      Ответить
      • Чтобы нервы не портили можно сделать просто {}
        Ответить
        • если только оптимизацию отключить, иначе ...
          Ответить

    Добавить комментарий