【问题标题】:NSString as a resources in Xcode projectNSString 作为 Xcode 项目中的资源
【发布时间】:2012-04-10 07:57:45
【问题描述】:

有什么方法可以简单地将静态 NSString 声明为定义的 int 标识符?我想在 C++ #define MY_SIMPLE_ID 4 中做类似的事情。

编辑: 我应该在哪里声明?在 C++ 中,我可以使用它全局访问资源文件。有没有办法在 Objective-C 中做到这一点?

【问题讨论】:

    标签: objective-c macros c-preprocessor


    【解决方案1】:

    为什么不使用:

    #define MY_STRING @"MyString"
    

    【讨论】:

    • 但是我应该在哪个类中声明这个宏?在 Visual c++ 中,您可以全局访问已定义的资源。在objective-c中有这样的东西吗?
    • 只需创建一个包含所有定义的 H 文件,并将该文件包含在预编译的头文件(.pch 文件)中。我就是这么做的。
    【解决方案2】:

    您还可以进入您的项目或目标构建设置,并添加到预处理器宏预编译头文件中未使用的预处理器宏。请参阅Xcode Preprocessor Macros 了解这两个选项之间的区别。

    【讨论】:

      【解决方案3】:

      我个人在一个单独的类中使用它,只有静态值:

      在 constants.h 文件中:

      extern int const MY_SIMPLE_ID;
      extern NSString const MY_SIMPLE_STRING;
      

      在常量.m 文件中:

      int const MY_SIMPLE_ID = 4;
      NSString const MY_SIMPLE_STRING = @"thestring";
      

      这样,它是整个应用程序中的全局静态值。

      【讨论】:

        猜你喜欢
        • 2011-03-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-10-05
        • 2011-07-17
        • 1970-01-01
        • 2012-04-02
        • 2016-12-28
        相关资源
        最近更新 更多