Задать вопрос
Lite_stream
@Lite_stream

Является ли хорошей практикой использование Stack Trace библотек в дебаг сборке?

Всем привет

Является ли хорошей практикой использование инструментов вроде Backward-cpp во время разработки приложений ? И имеют ли какие-либо неочевидные подводные камни ? (понятно, что имеется в виду компиляция с выключенным флагом оптимизации)

Также, в частности Backward-cpp может навешивать колбэки на разные системные сигналы типа необработанного исключения или сегфолта

Использование на примере макроса assert'а:

// smartAssert.h
void smartAssert(bool expression)
{
    if (expression)
        return;

    using namespace backward;

    StackTrace stackTrace;
    stackTrace.load_here(32);

    Printer printer;
    printer.object = true;
    printer.color_mode = ColorMode::always;
    printer.address = true;

    printer.print(stackTrace, stdout);
}


// config.h
#ifdef DEBUG
#   include "external/backward/backward.cpp"
#endif

#ifdef DEBUG
#   include "SmartAssert.h"
#   define SMART_ASSERT(expression) do { smartAssert(expression); } while (0)
#else
#  define SMART_ASSERT(expression) do {} while (0)
#endif
  • Вопрос задан
  • 127 просмотров
Подписаться 2 Комментировать
Подписчики вопроса 2 К ответам на вопрос (0)