代码之家  ›  专栏  ›  技术社区  ›  Heath Borders

abpersonviewcontroller cfretain its displayedperson abrecordref?

  •  2
  • Heath Borders  · 技术社区  · 15 年前
    ABRecordRef addressBookRecord = ...;
    ABNewPersonViewController *newPersonViewController = [[[ABNewPersonViewController alloc] init] autorelease];
    newPersonViewController.newPersonViewDelegate = delegate;
    newPersonViewController.displayedPerson = addressBookRecord;
    

    安全吗

    CFRelease(addressBookRecord);
    

    ?

    是否有一个我不知道的标准CoreFoundation模式?

    1 回复  |  直到 15 年前
        1
  •  3
  •   tomute    15 年前

    我觉得打电话给cfrelease不安全。
    DisplayedPerson在标题中定义如下。
    因此,当我们设置值时,只分配显示的Person,而不复制或保留它。
    因此,我认为我们不能释放它。

    @property(nonatomic, readwrite) ABRecordRef displayedPerson