2
我想在宏定義中使用塊,但沒有運氣。如何在宏中使用塊
下面是代碼:
#define IPHONE_OR_IPAD_BLOCK(void(^iphoneBlock)(void), void(^ipadBlock)(void)) ({ \
if (iphoneBlock && (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)) \
{ \
iphoneBlock(); \
} \
else if (ipadBlock) \
{ \
ipadBlock(); \
} \
})
,它似乎並沒有編譯。
你會如何建議在宏中使用塊?
UPDATE:感謝快速回復拉米鋁Zuhouri,我會用靜態函數,而不是因爲它提供了更多的類型檢查堅持:
NS_INLINE void DoIphoneOrIpadBlock(void (^iphoneBlock)(void), void (^ipadBlock)(void))
{
if (iphoneBlock && (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone))
{
iphoneBlock();
}
else if (ipadBlock)
{
ipadBlock();
}
}