我有这样的方法:
- (CGPoint) _convertCGPointCT2UIKit:(CGPoint)ctPoint{
CGPoint uikitPoint = CGPointMake(ctPoint.x + INITIAL_HORIZ_OFFSET,
self.bounds.size.height - ctPoint.y - INITIAL_VERT_OFFSET);
return uikitPoint;
}
有什么办法可以使它成为宏?
我尝试了此操作,但出现类似“ ;;在之前)”的错误,依此类推。
#define CGPointUIKit2CT(p) CGPointMake(p.x - INITIAL_HORIZ_OFFSET, self.bounds.size.height - p.y - INITIAL_VERT_OFFSET);
提前致谢。
伊格纳西奥
最佳答案
有两个经验法则可以指导您:
将所有内容括在括号中
不要以分号结尾宏,这可能是导致您出错的原因。而是在使用分号时将其放在代码中。
这是我的答案:
#define CGPointUIKit2CT(p) CGPointMake(((p).x) - INITIAL_HORIZ_OFFSET, self.bounds.size.height - ((p).y) - INITIAL_VERT_OFFSET)