【发布时间】:2013-03-24 07:58:55
【问题描述】:
以下宏给了我一个解析错误。看不出这里有什么问题。
#define adjust(tag, x, y) if (self.tag==tag) { origin.x += x; origin.y += y; return origin; }
....
adjust(20, 28, 265)
编辑:
查看随附的屏幕截图。我想使用宏扩展只是为了提高代码的可读性。这是一种非常本地化的用法,因此没有风险或重复使用等。
【问题讨论】:
-
origin 是一个结构体吗?或者这是 Rect 的一部分?
-
问题是
if (self.tag==tag)扩展为if (self.20==20),比较重复的问题以获得可能的解决方案。 -
谢谢马丁。 #define adjust(_tag, _x, _y) if (self.tag==_tag) { origin.x += _x;起源.y += _y;返回原点; } 成功了。
标签: objective-c macros