gpt4 book ai didi

objective-c - 在 Objective-C 中实现真/假/未定义三分变量的最佳方法

转载 作者:行者123 更新时间:2023-12-03 16:25:30 24 4
gpt4 key购买 nike

我很想使用 int,并设置 0 == NO1 == YES 以及其他任何内容 ==不明确的。显然,有一百万种方法可以做这样的事情,但对您来说最好的方法是什么?我能想到的问题包括简单性和内存占用(例如,如果我有很多这些怎么办?)。

另一种方法是使用两个 BOOL,一个用于 isDefined,一个用于 value

另一种方式,

typedef enum { CPStatusUndefined, CPStatusAvailable, CPStatusUnavailable } CPStatus;

编辑,用例是:

我有一个很难计算的是/否属性。当它被检查时,它会被频繁地检查(通过 UIMenuController,经常),但除非用户选择它,否则它永远不会被检查。我选择处理这个问题的方式是三型变量。第一次检查时,如果未定义,则计算是/否值并返回它,之后只返回是/否值。

最佳答案

使用枚举。在 Objective-C 中,它们的工作方式就像在 C/C++ 中一样

typedef enum {
No = 0,
Yes,
Other
} tri_type;

tri_type myVar = No;

if( myVar == Yes || myVar == Other ) {
// whatever
}

关于objective-c - 在 Objective-C 中实现真/假/未定义三分变量的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4295316/

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