在CGRectDivideWithPadding
文件中调用.h
宏时如下:
CG_INLINE
void CGRectDivideWithPadding(CGRect rect, CGRect *slicePtr, CGRect *remainderPtr, CGFloat sliceAmount, CGFloat padding, CGRectEdge edge)
{
CGRectDivideWithUsefulPadding(rect, slicePtr, remainderPtr, nil, sliceAmount, padding, edge);
}
它会产生Expected identifier or '('
错误。
宏从此处.m
展开:
#define CGRectDivideWithPadding(RECT, SLICE, REMAINDER, AMOUNT, PADDING, EDGE) \
do { \
CGRect _slice, _remainder; \
CGRectDivideWithPadding((RECT), &_slice, &_remainder, (AMOUNT), (PADDING), (EDGE)); \
\
_MEDAssignToRectByReference(SLICE, _slice); \
_MEDAssignToRectByReference(REMAINDER, _remainder); \
} while (0)
这里的语法是否有问题,我没有看到?或者其他地方的问题?我该如何解决这个问题?