【问题标题】:Clear Unused Entity Warnings For Static Int In xCode清除 xCode 中静态 Int 的未使用实体警告
【发布时间】:2013-10-20 23:34:00
【问题描述】:

我有一个项目,有一个我称之为“Keys.h”的文件

在该文件中,我声明了整个项目中使用的字符串和整数,其中一些是整数,其中一些是字符串。

所有的字符串都可以正常工作;但是,如果我使用整数,我会收到未使用的变量警告。

对于字符串,(lfPrefs 是用户偏好的字典)

static NSString * kUserLFPrefs = @"lfPrefs";

这工作正常,不会产生任何错误。

对于一个整数,(我有整数来定义当前模式,因为它似乎比一直比较字符串要快一些)。

static int kModeLiveFeed = 1001;
static int kModeEventFeed = 2002;

这些工作正常,除了它们显示未使用的实体警告。

我更喜欢使用整数而不是字符串,主要是因为我读到比较快得多,占用的内存更少等等。

我的问题是如何在仍然可以访问我的整数键的同时停止警告?

(或者,我应该只使用字符串)

【问题讨论】:

    标签: ios objective-c xcode static int


    【解决方案1】:

    我可以建议两种不同的方法。

    如果您想将此类变量保留在 .h 文件中,您可能更喜欢使用 define,如果您不会像这样更改值运行时间;

    #define kModeLiveFeed 1001
    

    如果您要更改变量值运行时间,我建议将它们保存在 .m 文件而不是 .h 文件中,并使用单例仅创建 .m 文件的一个实例。然后,即使您继续从 .m 文件中收到警告,也可以通过以下步骤禁用它:

    • 从左侧导航器中选择您的项目以打开项目设置视图。
    • 然后,选择您的目标。
    • 转到构建阶段选项卡并打开编译资源区域。
    • 单击 .m 文件的右侧以将编译器标志添加为 -w

    希望对你有帮助。

    【讨论】:

      【解决方案2】:

      您可能误解了 C/Objective-C 中 static 的含义(this question 应该有所帮助)。您应该使用const 而不是static 来定义常量,并且您应该在.m 文件中定义整数/字符串常量的值,并在.h 文件中使用相应的声明。或者更好的是,如果您有一组相关的整数常量,请使用 enum

      Here 是 Apple 关于常量的文档,其中包括上述信息以及命名建议(例如,PRConstant 优于经典 Mac OS 风格的 kConstant)。

      【讨论】:

      • 看来我误会了,我会用 const 再试一次。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-11-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多