我必须使用一些库,没有权力改变它或关心它, EveryTime我编译了大量的警告弹出窗口。像
这样没用的东西:警告C4350:行为改变:'std :: auto_ptr< _Ty> :: auto_ptr(std :: auto_ptr_ref< _Ty>) throw()'调用而不是'std :: auto_ptr< _Ty> :: auto_ptr(std :: auto_ptr< _Ty>&)throw()'
我想完成对此特定库的禁用警告。 |但仍希望对我自己的代码发出警告。是否可以在Visual Studio 2010中使用?
答案 0 :(得分:7)
#pragma warning是一个选项,但它可能只有在您自己的项目中使用预编译的头文件或源文件很少时才可行。
#pragma warning (push)
#pragma warning (disable : 4350)
#include <third/party/headers/in/question.h>
#pragma warning (pop)
答案 1 :(得分:4)
使用以下代码创建您自己的头文件(例如&#34; your_ABCD.h&#34;)。
// In your_ABCD.h
#pragma once
#pragma warning (disable : 4350)
#include <their_ABCD.h>
#pragma warning (default : 4350)
然后,您可以包含&#34; your_ABCD.h&#34;而不是&#34;他们的_ABCD.h&#34;文件。