gpt4 book ai didi

objective-c - 在 cocoa 中定义枚举 ivar

转载 作者:行者123 更新时间:2023-12-03 16:52:49 26 4
gpt4 key购买 nike

假设我有一个名为 TrafficLight 的类,并且我想要一个属性 currentColor。我知道可以创建一个枚举来表示固定选择池中的当前颜色,如下所示:

enum currentColor { 当前红色 = 0,当前黄色 = 1,当前绿色 = 2 };

但是现在我如何将其转换为 Cocoa 类中的 ivar?如果我将其设为属性,通常使用的属性属性是什么?枚举定义是否属于实现范围?它是否进入任何特定方法的内部? (比如init?)

最佳答案

您无法转发声明枚举,因此定义应该位于类的接口(interface)文件中,并且属性使用枚举类型声明为(非原子,分配):

typedef enum { 
CurrentlyRed = 0,
CurrentlyYellow = 1,
CurrentlyGreen = 2
} PossibleColours;

@interface ...

@property (nonatomic, assign) PossibleColours currentColour;

这样类和类的使用者就可以访问定义。

关于objective-c - 在 cocoa 中定义枚举 ivar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9835923/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com