Намеренные предупреждения компилятора для Visual C++, которые появляются в ошибочном Списке?

Как можно создать предупреждение компилятора (в модели #error, за исключением предупреждения) нарочно в Visual C++, который обнаружится в Ошибочном Списке с корректным файлом и номером строки?

GCC и другие компиляторы предлагают #warning, но компилятор MSVC не делает.

"Решение" по http://support.microsoft.com/kb/155196 не анализирует в ошибочном списке Visual Studio.

8
задан Thomas 2 July 2010 в 03:05
поделиться

2 ответа

Просто добавьте это в ваш общий включаемый файл (например, stdafx.h):

#define __STR2__(x) #x
#define __STR1__(x) __STR2__(x)
#define __LOC__ __FILE__ "("__STR1__(__LINE__)") : warning W0000: #pragma VSWARNING: "
#define VSWARNING(x)  message(__LOC__ x)

Используйте это как:

#pragma VSWARNING("Is this correct?!?!")

Компилятор выведет:

c:\dir\file.h(11) : warning W0000: #pragma VSWARNING: Is this correct?!?!

А вкладка Error List покажет предупреждение в таблице:

Type       Num   Description                                             File    Line
[Warning]  13    warning W0000: #pragma VSWARNING: Is this correct?!?!   file.h  11

точно как обычное предупреждение компилятора Visual Studio.

11
ответ дан 5 December 2019 в 14:00
поделиться

Это своего рода глупый ответ на ваш вопрос, но часто, если мне нужно добавить преднамеренное предупреждение, я набираю что-то вроде:

#pragma asdfkljasdlfjasklfjklasjdfklj

, что выдает Unknown Pragma предупреждение с номером строки и всем остальным.

1
ответ дан 5 December 2019 в 14:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: