automatic-ref-counting

    3热度

    1回答

    我是新来的目标C,并且我不知道如何在使用新的ARC编译器编译代码时创建和调用带out参数的方法。 这是我试图在非ARC目标C中完成的事情(这可能是错误的)。 // // Dummy.m // OutParamTest #import "Dummy.h" @implementation Dummy - (void) foo { NSString* a = nil;

    31热度

    2回答

    自ARC首次宣布它是编译时事物并且与iOS 4向后兼容以来,我已经阅读并听说过。我已成功重构了我的项目到ARC使用Xcode 4.2的自动重构,并在针对iOS 5.0 SDK编译时,它工作正常。但是,如果我尝试编译对我的iOS 4.2的SDK,它无法在链接时,缺少以下符号: _objc_retainAutoreleaseReturnValue _objc_autoreleaseReturnValu

    7热度

    3回答

    我已经花了一些时间调试与ARC和自定义的dealloc函数一个奇怪的问题。 我子类NSOperation类 我设置完成块进行此操作 操作由非常扁平物体的强属性引用(没有方法,全自动的ivars,两个强特性)让我们调用这个对象DataRequest 遵循所有的指导原则完成块只使用对本地对象的弱引用(包括操作本身) 既没有编译器也没有分析器ge nerate任何问题 DataRequest持有仅供参考

    31热度

    2回答

    我曾经声明所有委托属性 @property (assign) id<FooDelegate> delegate; 我的印象是,所有的分配,现在的属性应该是弱指针下申报委托性质,这是正确的? 如果我试图声明为: @property (weak) id<FooDelegate> delegate; 我得到一个错误,而试图@synthesize(自动生成的弱不被支持)。 这种情况下的最佳做法是什

    4热度

    1回答

    我刚刚安装了XCode 4.2,根据我读过的所有内容,ARC自动打开,你必须去建立阶段并标记你自己想要管理内存的文件,但我没有做过,但它像我一样工作。 奇怪的是,一切对我来说仍然很好,就像我还在使用XCode 4一样,这是正常的吗?从我读到的,我应该得到成千上万的警告,因为我不能再使用release,retain和autorelease,但我不是。

    19热度

    3回答

    我想知道在启用ARC的情况下,为基本数据类型(如bool)编写合成属性的正确方法是什么。 我使用ARC之前,使用这样的: @property(assign) bool isOn; 但它是我的理解(也许是错误的)已启用ARC时,你不应该使用assign。我试图用weak替换这个,但我得到错误 - “弱”属性的属性必须是对象类型。 我应该继续使用assign吗?

    -1热度

    2回答

    随着iOS的最新版本Apple为Objective-C实现了自动引用计数,但我不理解为作品。

    13热度

    1回答

    我收到了一个项目49个源文件我试图用编辑> refactor> convert to arc。我点击“预检”,没有错误,目标编译。 的Xcode经历“生成预览”,编译所有49个源文件,则表明了我1(或2)在审查文件更改列表。这是一个.h/.m文件。那个看起来是正确的。该列表上没有其他文件,我明白了。 当我点击保存,该窗口关闭,该项目试图建立,但失败,错误: Error in format of f

    28热度

    2回答

    使用ARC处理目标为4.0和5.0的iOS项目。 遇到与块,ARC和块外部引用对象相关的问题。下面是一些代码: __block AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request]; [operation setCompletionBlock:^ {

    4热度

    1回答

    这是我的场景。我有一个类A.在它的实现中,我创建了B类型的对象,并将B的委托设置为self(因此,在A类实现中的某个位置处有B.delegate = self)。 和类A有一个实例方法- (void)printThis; 现在B的实施中,当我尝试做[delegate printThis];,它给了我这个错误: 当然 “为选择printThis没有已知的实例方法”这是我启用ARC时。上面的委托模式用