【问题标题】:Why underscores before instance variables in Objective-C? [duplicate]为什么在 Objective-C 中的实例变量前加下划线? [复制]
【发布时间】:2011-10-30 03:48:37
【问题描述】:

可能的重复:
How does an underscore in front of a variable in a cocoa objective-c class work?
Prefixing property names with an underscore in Objective C

为什么很多 Objective-C 程序员都在实例变量之前加上下划线(即使他们甚至从不直接从代码的任何地方访问它们)?这背后的逻辑是什么?

【问题讨论】:

标签: objective-c cocoa


【解决方案1】:

在实例变量名称前添加下划线是所有变量的约定,这些变量不应在类实例之外访问。这让开发人员(以及代码的用户,如果它在库中)清楚地知道哪些是要从外部访问的,哪些不是。

【讨论】:

    【解决方案2】:

    逻辑是在访问属性与访问ivar时明确。

    如果没有下划线的属性,您不会错误地访问原始 ivar。不过,我不会在自己的代码中这样做。

    【讨论】:

      猜你喜欢
      • 2010-10-24
      • 2014-05-19
      • 1970-01-01
      • 2011-08-05
      • 1970-01-01
      • 2011-10-16
      • 2011-01-23
      • 2019-12-24
      • 2012-09-29
      相关资源
      最近更新 更多