Visual studio 始终禁用Visual Studio项目中的警告
我已经和VisualStudio斗争了一段时间了。我喜欢使用\WX选项将所有警告视为错误,因此我有一个通用的.h,它看起来像这样,用于禁用误报或我并不真正关心的警告:Visual studio 始终禁用Visual Studio项目中的警告,visual-studio,warnings,compiler-warnings,suppress-warnings,Visual Studio,Warnings,Compiler Warnings,Suppress Warnings,我已经和VisualStudio斗争了一段时间了。我喜欢使用\WX选项将所有警告视为错误,因此我有一个通用的.h,它看起来像这样,用于禁用误报或我并不真正关心的警告: #pragma once #pragma warning(disable : 26812) // The enum type * is unscoped. Prefer 'enum class' over 'enum'. #ifndef _DEBUG #pragma warning(disable : 4189) // *:
#pragma once
#pragma warning(disable : 26812) // The enum type * is unscoped. Prefer 'enum class' over 'enum'.
#ifndef _DEBUG
#pragma warning(disable : 4189) // *: local variable is initialized but not referenced
#pragma warning(disable : 4464) // Relative include path contains '..'
#pragma warning(disable : 4514) // *: unreferenced inline function has been removed
#pragma warning(disable : 4710) // * function not inlined
#pragma warning(disable : 4711) // Function * selected for automatic line expansion
#endif
我将此文件添加到每个.h
文件的顶部。作为额外的预防措施,当我添加任何无意编辑的外部文件(如任何库)时,我会将include-between#pragma warning(push,0)
和#pragma warning(pop)
包装起来,以确保这些文件中的任何警告都会被忽略,因为我无论如何都无法对它们执行任何操作
我遇到的问题是,我包含的库文件(volk.h
,在本例中)包含另一个文件(volk.c
),并且该文件正在触发一个警告26812
,我已通过两种方式禁用了该警告:
- 明确地说,在
中,它包含在common.h
之前,无处不在volk.h
- 隐式地,通过将任何
包含在“警告禁用器”之间volk.h