gpt4 book ai didi

cocoa - 如何执行存储在 NSDictionary 中的 block ?

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

我对 block 有点陌生,需要一些帮助。我想将一个 block 存储在 NSDictionary 中并在基于其 key 访问该 block 时执行该 block 。这是我到目前为止的一个例子。

NSDictionary *blocks = [NSDictionary dictionaryWithObjectsAndKeys:
^{NSLog(@"Log Block 1");}, @"Block1",
^{NSLog(@"Log Block 2");}, @"Block2",
nil];

然后我使用 keyEnumerator 枚举字典。我知道该 block 已正确存储,因为我调用 NSLog(@"%@", [blocks objectForKey:key]);在枚举过程中得到<__NSGlobalBlock__: 0x100003750> 。所以我知道我可以访问它,但此时我该如何执行它?

最佳答案

试试这个:

void(^myAwesomeBlock)() = [blocks objectForKey:key];
myAwesomeBlock();

关于cocoa - 如何执行存储在 NSDictionary 中的 block ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10036652/

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