我不知道是否可以在目标c中使用某些预定义值声明变量。
例如,我希望我的对象“位置”有一个名为类型的变量,其可能的值为:“street”,“city”或“country”。
我们的想法是通过以下方式访问它:
Location *myLoction = [[Location alloc] init]
myLocation.type = city;
后来做了类似的事情:
if(myLocation.type == street) {
//Do something here
}
这可能吗?
答案 0 :(得分:4)
您正在寻找枚举:
typedef NS_ENUM(NSInteger, LocationType) {
LocationTypeStreet,
LocationTypeCity,
LocationTypeCountry
};
@interface Location : NSObject
@property (nonatomic) LocationType type;
@end
您必须为值添加前缀,因为您没有名称空间。
if(myLocation.type == LocationTypeStreet) {
}