automatic-ref-counting相关内容

为什么Arc :: try_unwrap()引起恐慌?

我正在编写一个简单的聊天服务器,该服务器将消息广播到所有连接的客户端. 由于我是初学者,因此代码看起来可能很糟糕.对等体尚未在任何地方使用,因为我也想将其传递给handle_client函数,因此当数据在流中可用并成功读取时,我想在所有连接的客户端上广播它.我知道这不是一个好方法,我只是想了解我一般如何做这样的事情. use std::io::BufRead; use std::io: ..

iOS:自动参考计数

我有一个问题:如果我使用ARC创建了一个应用程序,那么与该应用程序兼容的IOS的最新版本是什么?如果我在AppStore中上传我的应用程序,每个人都可以使用我的应用程序吗?还是只有拥有特定ios版本设备的人? 解决方案 iOS 4.0支持ARC,但有一个警告:弱引用的自动归零仅在iOS 5.0及更高版本上受支持. ..
发布时间:2020-09-14 23:50:49 移动开发

使用或不使用自动引用计数

我目前正在学习Objective C,到目前为止,我一直在所有项目中使用自动引用计数.但是,在与一些同事交谈之后,并在网上浏览了一些论坛之后,Ive注意到一种趋势,即关闭了“自动引用计数"并手动管理内存. 我一直想知道ARC是否做得足够好,还是偶尔丢球.手动分配/取消分配内存是否更有效?是否有人因为这就是他们习惯而关闭了ARC? 我应该继续使用ARC吗?如果不是这样,有人会在将来知道A ..
发布时间:2020-09-14 23:50:47 移动开发

Objective-C运行时如何知道弱引用的对象是否仍然存在?

随着ARC的出现,提供了一些新功能,以使开发人员可以使用弱引用的对象. id objc_loadWeak(id *location)是其中之一.该函数接收一个对应于内存中弱对象存储位置的参数,如果该对象仍然存在,则返回该对象;如果释放该对象,则返回nil. 似乎当将对象obj作为weak存储在具有id objc_storeWeak(id *location, id obj)的位置locati ..

过渡到ARC导致代理问题

在将项目转换到ARC之后,我遇到了一些问题,即在已释放的实例上未调用/正在调用委托方法.我已经意识到问题是我有一个变量,该变量被分配然后执行异步任务.举一个简单的例子,假设有一个名为MyService的对象,它响应委托方法executeDidSucceed: - (void)fireRequest { MyService *service = [[MyService alloc] i ..
发布时间:2020-09-14 23:49:31 移动开发

缺少桥强制转换会导致预处理源中出现错误,但不会导致实际源中出现错误

要编译源文件,请先使用clang对其进行预处理,然后再对其进行编译.因此,如果运行 clang -E ,我应该得到一个预处理文件,可以使用 clang -c 进行编译.但是以下代码在经过预处理后无法编译. int main(int argc, char * argv[]) { NSString* foo = @"bar"; CFStringRef urlString = C ..
发布时间:2020-09-14 23:49:29 移动开发

如何一次为很多文件添加-fobjc-arc

我想将xmppframework添加到我的项目中,如何一次将-fobjc-arc添加到所有xmpp文件中? 解决方案 这并不完美,但通常已经足够了: 在项目窗口的左上方选择项目. 选择目标. 打开构建阶段窗格. 选择“编译源" 在过滤器区域中输入"xmpp" 选择所需的文件. 单击Enter,然后在对话框中键入-fobjc_arc. ..
发布时间:2020-09-14 23:48:14 移动开发

-fno-objc-arc中的未知选项字符'f'

我使用的是xcode 4.3.2,正在编译zmqobj https://github.com/jeremy-w/objc-zmq.git .该项目中包含的原始目标是针对os x的,但是我正在尝试为ios添加一个新目标. 对于新目标,它给了我ARC投诉(因为代码是非ARC).但是,当为原始的os x目标进行编译时,它不会给我这些警告. 添加-fno-objc-arc给我: /App ..
发布时间:2020-09-14 23:46:38 其他开发

为什么关键字“强"在非ARC环境中的属性上使用?

我刚刚开始使用Xcode 4.2和iOS5进行开发.创建空的选项卡式应用程序项目后,我注意到在属性上使用了新的关键字"strong".我在这篇文章上读到有关它与在ARC环境中保留替换有关的信息,但是情况并非如此,因为我没有选中“使用自动引用计数"复选框. 解决方案 在非ARC环境中,关键字"Strong"是"retain"的同义词. 对于ARC环境,请在此处阅读: http://cl ..
发布时间:2020-09-14 23:46:11 移动开发

过渡到ARC的工具

我想将我的应用程序转换为ARC.我可以将Objective-C Automatic Reference Counting更改为YES,但这不会自动删除release s retain s等. Xcode拥有一个新工具,该工具可以自动执行ARC转换的机械部分(例如删除保留和释放调用),并可以帮助您解决迁移器无法自动处理的问题.迁移工具将项目中的所有文件转换为使用ARC.如果您更方便地对某些文件 ..
发布时间:2020-09-14 23:45:08 移动开发