gpt4 book ai didi

objective-c - 你如何在 Objective-C 的实现文件中调用全局变量

转载 作者:行者123 更新时间:2023-12-04 05:50:34 29 4
gpt4 key购买 nike

假设我想要一个 BOOL 来指示某物的状态。
然后我调用一个类方法,该方法使用递归函数来构造某个字符串。
无论如何要将此 BOOL 保留在类方法之外,以便它的状态可以在递归之外更改?
我发现很难问清楚这个问题,但我希望你们知道我想问什么:/

最佳答案

有两种原始方法:

1)对多个文件可见:

MONGlobalBOOL.h

extern BOOL MONGlobalBOOL;

MONGlobalBOOL.m
BOOL MONGlobalBOOL = NO;

2)对一个文件可见:

MONGlobalBOOL.m
static BOOL MONGlobalBOOL = NO;

您不希望在您的标题中使用它,因为它只会为每个翻译发出变量的副本。

正在使用:
+ (void)method
{
if (MONGlobalBOOL) {
...
}
}

仔细的、全局可变数据经常衰减为邪恶的东西。您可以通过在堆栈上创建一个局部变量来解决您的确切问题。

关于objective-c - 你如何在 Objective-C 的实现文件中调用全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10100583/

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