1

我可以调用类变量“id”(例如 NSString *id)吗?一切似乎都有效,除了我无法在 dealloc 方法中进行 [id release]。我正在使用对象/键构造从 XML 解析器创建此类的实例,因此我需要将其称为 id。我已经尝试过 [self.id release] 并且一切正常,除了分析器向我显示警告说“属性返回具有 +0 保留计数的 Objective-C 对象”和“对象的引用计数不正确递减此时调用者不拥有”。所以我想知道我是否在做非法的事情。非常感谢。

4

3 回答 3

3

id在objective-c 中是一个预定义的类型。您可能应该将其命名为不同的名称,例如idString

这与尝试命名变量int或另一个objective-c关键字是一样的if

于 2012-06-27T15:16:36.833 回答
2

id是objective-c中的关键字。它是一个弱类型变量标识符,类似于varjavascript。

于 2012-06-27T15:16:53.933 回答
1

不要这样做。

  • 这是一个没有意义的名字——什么的ID ?
  • 它与语言关键字冲突,并且一定会在某处产生一些不良影响
  • 它会损害可读性,人们将不得不怀疑您在代码中的任何位置指的是什么
于 2012-06-27T15:18:52.420 回答