避免“;无法访问的代码“;预处理器相关代码的警告

本文关键字:代码 警告 处理器 预处理 访问 避免 | 更新日期: 2023-09-27 18:25:17

我正试图弄清楚是否有任何方法可以避免因预处理器导致的某些事情而收到"无法访问代码"警告。我不想抑制所有这样的警告,只想抑制那些依赖于预处理器的警告,例如

#if WINDOWS
    public const GamePlatform platform = GamePlatform.PC;
#else
    public const GamePlatform platform = GamePlatform.MAC;
#endif

稍后会有代码:

if (platform == GamePlatform.PC)
{
    ...
}
else
{
    ...
}

这两个部分中的一个总是被检测为"无法访问的代码",我们到处都是。我想尝试消除它创建的许多警告,但我仍然想为合法无法访问的代码获得警告。(事实上,不止有两个平台,所以每一块特定于平台的代码都会产生一堆不必要的警告。)

避免“;无法访问的代码“;预处理器相关代码的警告

选项1:在有if语句的地方添加预处理器宏。这将更具表演性,但可能有点丑陋。

选项2:使平台变量不常量。将其设置为静态只读使警告对我来说消失了。