automatic-ref-counting相关内容
我尝试在我的项目中导入解析框架.我确保我的项目喜欢它,但我找不到任何关于它是否“电弧敏感"的信息.我的项目是基于弧的. 这是我得到的错误: 架构 i386 的未定义符号:“_SCNetworkReachabilityCreateWithName",引用自:- [PFCommandCache init] 在 Parse(PFCommandCache.o)+[PFInternalUtils(R
..
随着 Xcode 4.2 中引入的新的自动引用计数 (ARC),我们不再需要在 Objective-C 中手动管理保留/释放. 这似乎类似于垃圾收集,就像在 Mac 上的 Objective-C 和其他语言中所做的那样.ARC 与垃圾回收有何不同? 解决方案 正如我在回答中描述的那样 这里,ARC可以提供最好的手动内存管理和跟踪垃圾收集.它主要消除了开发人员在 Objective-C
..
我在纯 iOS5/ARC 环境中工作,所以我可以根据需要使用 __weak 引用.在许多情况下,我确实在块中引用了 ivars,最值得注意的是,移动视图的动画块,例如,我的视图控制器类的属性. 我的问题: 在一个块中最简单的 ivars 使用中,我是在创建一个引用循环吗?我是否需要使用 __weak self/strong self 技术每次我编写一个操作包含对象的实例变量的块?
..
@interface 文章:NSObject@property (nonatomic, strong) NSString *imageURLString;@结尾@实现类@synthesize imageURLString = _imageURLString;- (void)setImageURLString:(NSString *)imageURLString {_imageURLString =
..
我不确定将项目转换为自动引用计数 (ARC).它仍然支持 iOS 4.X 或更低版本? 谢谢 解决方案 据我所知,是的 - ARC 由编译器完成,应该被视为检查所有代码并插入正确代码的向导或助手为您保留和发布声明. 因此,这将与旧版 iOS 运行时兼容. 编辑: IT 将支持 4.x 但不支持 3.x
..
是否可以结合 ARC 和非 ARC 项目?我还没有真正尝试过,但情况是这样的: 我们有一个带有标签控制器的旧 iOS 项目(非 ARC).选项卡控制器中有一个选项卡还没有任何功能或视图.我正在制作一个与旧项目相关的新项目,如果可以将我的新项目与旧项目结合起来并将我的新项目的视图分配给选项卡,我希望它使用 ARC. 解决方案 当然可以,而且非常简单.用 arc 开始你的新项目,然后用
..
我在尝试将我的 iPhone 应用迁移到新的 ARC 技术时遇到问题.当我尝试转换代码时,出现以下错误 29 次: Apple LLVM 编译器 3.0 错误脆弱的 abi 不支持 -fobjc-arc 这是什么意思?更重要的是,我该如何解决?提前致谢! 解决方案 来自 Apple 的开发者论坛 这是 Seed 3 中的一个不幸错误,其中迁移器和模拟器不能很好地协同工作.要解决
..
我有一个 UIViewController 被推送到容器控制器然后弹出,使用分配工具,我可以看到视图控制器随后被销毁.但是,永远不会到达控制器的 dealloc 中的断点.有谁知道为什么不调用 dealloc ?ARC是否可以在不调用dealloc的情况下销毁对象? 另外,我禁用了 NSZombies(有人说这会导致 dealloc 不触发). 编辑: Dealloc 没有做太多
..
..
我正在尝试将指针传递给指向方法的指针,但显然 ARC 对我的操作方式存在一些问题.这里有两种方法: + (NSString *)personPropertyNameForIndex:(kSHLPersonDetailsTableRowIndex)index{静态 NSArray *propertyNames = nil;(nil == propertyNames) ?[self SHL_init
..
在更新我的一些代码以与 iOS 5 SDK 兼容时,我尝试通过在 Xcode 中使用“转换为 Objective-C ARC"来重构我的代码并收到错误.错误发生在我的 .h 文件中的实例变量上. NSError **_error; 错误提示“指向非 const 类型 'NSError *' 的指针没有明确的所有权."我该如何解决这个问题? 解决方案 当将 NSError 对象存储在实例
..
我目前正在使用 iOS 5 SDK 尝试开发我的应用程序.我正在尝试使 NSString 成为属性,然后在 .m 文件中合成它(我之前已经这样做了,没有任何问题).现在,我遇到了这个问题:“语义问题:属性的合成 getter 遵循 Cocoa 命名约定以返回‘拥有’对象." 这是我的代码:.h @interface ViewController : UIViewController {NS
..
在 iOS 项目中使用新的自动引用计数 (ARC) 内存管理样式有哪些优点和缺点? 在使用 iOS 5.0 SDK 进行开发时,是否可以选择不使用 ARC? 对于新项目,您建议使用 ARC 还是手动引用计数 (MRC)? 使用 ARC 的应用程序能否在比 iOS 5.0 更早的操作系统版本上运行? 解决方案 在 iOS 项目中使用新的自动引用计数 (ARC) 内存管理
..
我已将我的项目切换到 ARC,但我不明白是否必须对 IBOutlets 使用 strong 或 weak.Xcode 这样做:在界面生成器中,例如,如果创建一个 UILabel 并且我将它与助手编辑器连接到我的 ViewController,它会创建这个: @property (nonatomic, strong) UILabel *aLabel; 它使用 strong,相反,我在 RayWe
..
我已将我的应用转换为使用 ARC. 在我有以下代码行之前: NSArray *colors = [NSArray arrayWithObjects:startColor, endColor, nil]; 由于 ARC 不允许将非 Objective-C 指针类型隐式转换为“id",因此我重写了如下行: NSArray *colors = [NSArray arrayWithObject
..
使用 ARC 处理面向 4.0 和 5.0 的 iOS 项目. 遇到与块、ARC 和从块外引用对象相关的问题.这是一些代码: __block AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];[操作集完成块:^ {if ([操作被取消]) {返回;}..
..
谁能帮我记住告诉 XCode 对某些文件不使用 ARC 的标志是什么?我的项目中有几个文件被标记为这样...直到我添加了另一个文件并决定将其转换为 ARC.听起来很容易,对吧?我希望我能够简单地检查我想要的文件并让 XCode 发挥它的魔力.好吧,不是那么容易,在预检查期间它从文件中删除了所有 -Noarc 标志,现在我需要手动将标志重新应用于多个文件. 这个故事的寓意是:一旦您的项目在 A
..
今天,我已经将我的 xCode 更新到 4.2 版本,并且我想禁用 ARC,我也用谷歌搜索.但无法解决我的问题.根据搜索结果,在目标设置中,找不到‘Objective-C自动引用计数’项,所以没机会设置为NO.我一一找到,也用搜索栏. 并且知道最新的 Xcode4.2,如何为项目禁用 ARC,而不是针对特定文件. 非常感谢. 解决方案 在左侧的管理器中单击您的项目. 选择你的
..
ARC 禁止在结构或联合中使用 Objective-C 对象,尽管标记了文件 -fno-objc-arc?为什么会这样? 我假设如果你标记它 -fno-objc-arc 你没有这个限制. 解决方案 如果您收到此消息,请尝试 __unsafe_unretained.只有在结构中的对象未被保留时,它才是安全的.示例:如果您将 OpenFeint 与 ARC 一起使用,则 OFBragDe
..
我需要在 NSArray 中存储对对象的弱引用,以防止保留循环.我不确定要使用的正确语法.这是正确的方法吗? Foo* foo1 = [[Foo alloc] init];Foo* foo2 = [[Foo alloc] init];__unsafe_unretained Foo* weakFoo1 = foo1;__unsafe_unretained Foo* weakFoo2 = foo2;
..