void (*setter)(id, SEL, BOOL);int i;setter = (void(*)(id, SEL, BOOL))[target methodForSelector:@selector(setFilled:)];for (i = 0; i < 1000; i++)setter(targetList[i], @selector(setFilled:), YES);怎么理解
2 回答
ibeautiful
TA贡献1993条经验 获得超5个赞
这是定义系列函数:
首先,顶上是声明部分,函数反回值为void
接着是函数名称,在这里不是个定值,而是个指针
比如void maxNums();这个函数,把maxNums存为一个串,就是这个意思
这样的好处是可以批量的声明多个函数,例如下面for循环中内容
最后的括号内(id, SEL, BOOL)这里是函数的参数部分
添加回答
举报
0/150
提交
取消