以下宏给出了一个解析错误。不知道这里有什么不对。
#define adjust(tag, x, y) if (self.tag==tag) { origin.x += x; origin.y += y; return origin; }
....
adjust(20, 28, 265)
编辑:
非常感谢你们的帮助。看看附带的截图。我想使用宏扩展来提高代码的可读性。它是一种非常本地的用法,因此没有风险或重复使用等。
答案 0 :(得分:2)
您的宏引用了未定义的属性origin
,如果它在替换范围内不存在,则会在扩展宏后导致编译器错误。实际上,作为一个整体,你的宏不是很模块化。例如,您引用了tag
和self
,这些属性是