0

我在处理块和宏时遇到了一个小问题,我希望有 2 个块指针指向正在创建的同一个块。

这是一个例子

Block a;  //Block is a typedef
Block b;
a=b=^{int craziness=0};

截至目前,a 和 b 是 2 个不同的块,我希望它们是同一个块,以使我的宏更容易

我的宏是MACRO_NAME(method) Block method = self.block =^

Self.block 有一种管理列表中的块的方法,所以我需要代码遵循我的方式,因为在宏之后会跟随我的代码,所以我希望结果看起来像这样

(void) somemethod
{
    MACRO_NAME(newBlock)
    {
        Int crazyness = 0;
    };
}

任何想法,将不胜感激

编辑:作为旁注,我知道我可以使用 MACRO_NAME(method,block) 并让它工作,但它让我的代码看起来很难看。

4

2 回答 2

0

原来。我必须添加第三个块指针才能使其正常工作,谁知道,无论它工作如何,感谢您的帮助

于 2013-08-23T20:51:25.813 回答
0

你为什么不这样做呢self.block = MACRO_NAME(method)

接着,

MACRO_NAME(method) Block method = ^
于 2013-08-23T05:38:09.907 回答