具体来说,为了封装,我想使用如下访问器:
- (CGPDFPageRef)pageCreate {
// Assume url exists and is valid
NSURL *url = [self url];
CGPDFDocumentRef document = CGPDFDocumentCreateWithURL((__bridge CFURLRef)url);
CGPDFPageRef result = CGPDFDocumentGetPage(document,1);
CGPDFPageRetain(result);
CGPDFDocumentRelease(document);
return result;
}
我假设那些使用该方法的人会知道该页面已被保留(因此将单词 create 放在方法名称中,即使它有点误导)并且他们需要在使用完它后释放它。
问题是......自从我发布了文档后,该页面是否有效,或者我是否正在尝试访问已发布的内容?