gpt4 book ai didi

ios - 理解使用对象 C 编程的障碍

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:28:49 25 4
gpt4 key购买 nike

<分区>

关于教程 programmingWithObjectiveC。

following code让我感到困惑:

自定义类型定义在处理返回 block 或将其他 block 作为参数的 block 时特别有用。考虑以下示例:

void (^(^complexBlock)(void (^)(void)))(void) = ^ (void (^aBlock)(void)) {
...
return ^{
...
};
};

complexBlock 变量指的是将另一个 block 作为参数 (aBlock) 并返回另一个 block 的 block 。

重写代码以使用类型定义使其更具可读性:

typedef void (^XYZSimpleBlock)(void);
XYZSimpleBlock (^betterBlock)(XYZSimpleBlock) = ^ (XYZSimpleBlock aBlock) {
...
return ^{
...
};
};

我理解重写代码: enter image description here但我看不懂源代码:

void (^(^complexBlock)(void (^)(void)))(void) = ^ (void (^aBlock)(void)) {
...
return ^{
...
};
}

按我的理解应该是:

(void (^) (void)) (^complexBlock) (void (^)(void) = ^ (void (^aBlock)(void)) {
...
return ^{
...
};
};

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