如何在命名空间中声明Objective-C中的常量?

时间:2012-12-06 15:47:15

标签: objective-c constants

在Java中我会去

class SettingKeys
{
    static String USERNAME = "username";
    static String PASSWORD = "password";
}

然后使用它

username = settings.get(SettingKeys.USERNAME);

我在Objective-C做什么?

2 个答案:

答案 0 :(得分:6)

Objective-C没有名称空间。你可以在类方法中返回常量,但很少这样做;相反,您只需在全局上下文中声明常量,并可能在名称前面加上命名冲突。

答案 1 :(得分:3)

在Objective-C中执行此操作的一般方法是使用typedef'd enum

typedef enum
{
    MyClassConstant1,
    MyClassConstant2,
    MyClassConstant3
} MyClassConstant;

@interface MyClass : NSObject
{
    MyClassConstant _something;
}

@end

当然这只适用于常数整数值;对于你通常做的字符串:

extern NSString * const MyClassString1;

......等等。