我有一个这样的方法:
- (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)
关于iphone - 为此编写宏 : (Objective-C),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3257767/