Я использую nlohmann json (https://github.com/nlohmann/json) библиотека (1 отдельный файл json.h)) с Qt. Я понимаю, что Qt имеет свою собственную функцию json, поэтому предположим, что может использоваться любой сторонний заголовок. Qt генерируетмножество проблем / предупреждений, и я хотел бы попытаться подавить проблемы / предупреждения только для файла json.h.
[EDIT] Интересно, что сторонняя библиотека json была обновлена с версии 3.3.0 до версии 3.4.0 и все предупреждения исчезли (вероятно, лучший результат). Тем не менее, возможность подавления предупреждений третьих сторон все равно была бы замечательной.
Я попробовал предложения здесь , поместив .h вподкаталог, а также добавление подкаталога в INCLUDEPATH. $$ PWD, по-видимому, выдаст текущий каталог .pro-файла, но после этого изменений не будет.
INCLUDEPATH += $$PWD/thirdparty
QMAKE_CXXFLAGS += -isystem $$PWD/thirdparty/
Предупреждения простывоспроизвести с помощью простого примера hello world, приведенного ниже:
#include <QCoreApplication>
#include <QDebug>
#include "json.h"
using namespace nlohmann;
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
qDebug() << "hello world";
return a.exec();
}
[ПРАВИТЬ] Все еще надеясь на некоторую помощь. Из комментариев я попытался обернуть включение, которое dя не работаю, с тем, что видно ниже:
#pragma warning(push, 0)
#include "json.h"
#pragma warning(pop)
Я использую qmake, но подумал, что, возможно, решения gcc могут подойти, кажется, что они не работают.
Любая помощь будет оченьоценили.