Форум программистов, компьютерный форум CyberForum.ru

Макрос TRACE - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Классовая диаграмма (Дейтел контр. вопр) http://www.cyberforum.ru/cpp-beginners/thread1497238.html
Не получается выполнить контрольный вопрос по конструированию программного обеспечения Книга "Как программировать на c++" Дейтел 5-е издание страница 187, вопрос 3.1 вот, что получается у меня не понимаю почему в ответе в книге есть windshield, да ещё и в 2 состояниях, это ветровое стекло в переводе.seatbelt так-же поставил в ступор(ремень безопасности)
C++ Профилирование и альтернативная компиляция проектов Visual Studio Я хочу научиться профилировать написанные мной c++ программы. Я работаю в среде windows. Для профилирования проекта я развернул MinGV и добавил путь к компиляторам и профайлеру в общие пути. Далее при попытке профилировать только что скомпилированный в Visual Studio проект, через gprof, профилировщик заругался: C:\Users\RIK\Documents\Visual Studio 2013\Projects\CustomWebGL\Debug>gprof Custo... http://www.cyberforum.ru/cpp-beginners/thread1497227.html
Некоректное считывание кириллических символов C++
Здравствуйте. Вот в такой функции: std::vector<std::string> CreateFileList(std::string p, std::vector<std::string>& Directories) { std::vector<std::string> Files(0); std::string variable = p +'\0'; wchar_t* Buffer = new wchar_t; mbstowcs(Buffer, variable.c_str(), variable.length()); cout << p.length() << endl;
Определить в последовательности количество чисел кратных трем, и количество чисел, кратных семи C++
Дано натуральное число n и целые числа x1 ,x2, … xn. Определить количество чисел xi кратных трем, и количество чисел xi кратных семи.
C++ Вывести в окно консольного приложения числа в виде таблицы http://www.cyberforum.ru/cpp-beginners/thread1497205.html
Вывести в окно консольного приложения числа в виде таблицы. 20 21 22 23 24 19 20 21 22 18 19 20 17 18 16
C++ Организация вычислений во время ввода данных Дано натуральное число. Верно ли, что произведение его цифр меньше а, а само число делить на в? подробнее

Показать сообщение отдельно
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
11.07.2015, 18:04  [ТС]     Макрос TRACE
Цитата Сообщение от iRomul Посмотреть сообщение
Скорее всего это обёртка над fprintf или подобным.
Нет там можно посмотреть вот определение:
C++
1
#define TRACE ATLTRACE
для 0 и 3
C++
1
2
3
4
#define TRACE0(sz)              TRACE(_T("%s"), _T(sz))
#define TRACE1(sz, p1)          TRACE(_T(sz), p1)
#define TRACE2(sz, p1, p2)      TRACE(_T(sz), p1, p2)
#define TRACE3(sz, p1, p2, p3)  TRACE(_T(sz), p1, p2, p3)
Определение ATLTRACE
C++
1
#define ATLTRACE ATL::CTraceFileAndLineInfo(__FILE__, __LINE__)
И само определение CTraceFileAndLineInfo
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
_trace.TraceV(m_pszFileName, m_nLineNo, dwCategory, nLevel, pszFmt, ptr);
        va_end(ptr);
    }
#pragma warning(pop)
 
#pragma warning(push)
#pragma warning(disable : 4793)
    void __cdecl operator()(
        _In_z_ const char *pszFmt, 
        ...) const
    {
        va_list ptr; va_start(ptr, pszFmt);
        ATL::CTrace::s_trace.TraceV(m_pszFileName, m_nLineNo, atlTraceGeneral, 0, pszFmt, ptr);
        va_end(ptr);
    }
#pragma warning(pop)
 
#pragma warning(push)
#pragma warning(disable : 4793)
    void __cdecl operator()(
        _In_z_ const wchar_t *pszFmt, 
        ...) const
    {
        va_list ptr; va_start(ptr, pszFmt);
        ATL::CTrace::s_trace.TraceV(m_pszFileName, m_nLineNo, atlTraceGeneral, 0, pszFmt, ptr);
        va_end(ptr);
    }
#pragma warning(pop)
 
private:
    /* unimplemented */
    CTraceFileAndLineInfo &__cdecl operator=(_In_ const CTraceFileAndLineInfo &right);
 
    const char *const m_pszFileName;
    const int m_nLineNo;
};


Добавлено через 2 минуты
Цитата Сообщение от iRomul Посмотреть сообщение
Выходит, что да, но в доках в этим макросам указано, что они являются устаревшими, и рекомендуется писать с помощью ATLTRACE2
Та пофигу макрос как был так он и будет в новых версиях работать, это ж специально сделали как бы инкапсуляция макросом, так что можно и старое использовать.
 
Текущее время: 13:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru