代码之家  ›  专栏  ›  技术社区  ›  prakhar

“-copy”和“-copyWithZone:”之间有什么区别?

  •  8
  • prakhar  · 技术社区  · 12 年前

    我知道复制会创建一个对象的不可变副本,但我只想知道copywithzone是如何工作的,以及复制和copywithzone之间的基本区别是什么

    2 回复  |  直到 10 年前
        1
  •  14
  •   justin    12 年前

    copy 只是 copyWithZone: ,使用默认区域。

    你很少会打电话 带区域复制: 直接,尽管为了采用 @protocol NSCopying .所以你通常会看到 带区域复制: 仅在 带区域复制: 类似地,您通常会避免实现 复制 ,并且只让的默认实现 复制 电话接通 带区域复制:

        2
  •  5
  •   Joshua Weinberg    12 年前

    NSZone 是一个与iOS无关的遗留概念。默认情况下 -copy NSObject 将呼叫 -copyWithZone: 带有默认区域。