только что сделал это, и это, безусловно, превосходит мое старое решение использования #error
: D
#define _STR(x) #x
#define STR(x) _STR(x)
#define TODO(x) __pragma(message("TODO: "_STR(x) " :: " __FILE__ "@" STR(__LINE__)))
, вы можете изменить это так, как вам нравится / в соответствии с вашими потребностями.Пример его использования:
//in code somewhere
TODO(Fix this);
вывод на панели консоли:
1>TODO: Fix this :: c:\users\administrator\documents\visual studio 2008\projects\metatest\metatest\metatest.cpp@33
Единственный недостаток - вы не можете перейти к этой строке (дважды щелкнув сообщение впанель консоли) с использованием __pragma
(но при тестировании с #pragma
, похоже, это не так ...)