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條經驗 獲得超6個贊
這是定義系列函數:
首先,頂上是聲明部分,函數反回值為void
接著是函數名稱,在這里不是個定值,而是個指針
比如void maxNums();這個函數,把maxNums存為一個串,就是這個意思
這樣的好處是可以批量的聲明多個函數,例如下面for循環中內容
最后的括號內(id, SEL, BOOL)這里是函數的參數部分
添加回答
舉報
0/150
提交
取消