很长的目标C因为决定使用self
而不是this
而让我感到恼火。现在,我希望通过将此代码放在程序开头或附近的某个地方来结束这种挫败感:
#define this self
我知道这会编译,并且可能会像我期望的那样工作。但是,我无法帮助,但认为对此有不可预见的后果。 这是一件安全的事情,还是在我试图解决的简单问题之外会出现问题?
答案 0 :(得分:6)
结果可能是没有其他人,但你可以阅读你的代码,并会在这里被你自己的约定弄糊涂。
答案 1 :(得分:2)
另一个结果是,如果导入到C ++或Objective-C ++代码中,它可能会破坏使用this
的代码,将其转换为self
,这将是一个未定义的变量。