Env: Уровень предупреждения Visual Studio установлен на 4, Код в единственном файле в решении:
#pragma warning( push )
#pragma warning( disable: 4503 )
#pragma warning( disable: 4702 )
#include <boost/property_tree/ptree.hpp>
#pragma warning ( pop ) //mark
#include "iostream"
int main()
{
boost::property_tree::ptree pt;
for( boost::property_tree::ptree::const_iterator it = pt.begin();
it != pt.end();
++it )
{
std::cout << it->second.data() << '\n';
}
return 0;
}
Проблема: предупреждение 4503 по-прежнему отображается при компиляции.Что-то еще, что я пробовал:
- поставить строку с 'mark' в качестве последней строки приложения, без эффекта.
- , если я использую предупреждение #pragma (отключено: 45034702) без push / pop, он работает, но влияет на то, что было скомпилировано впоследствии для всего решения, даже если я поместил предупреждение #pragma (по умолчанию: xx) где-то, похоже, оно не возвращает предупреждение в состояние по умолчанию.*
Кто знает, почему это происходит, и что является лучшим решением для подавления предупреждений в визуальной студии.веселит.