当我使用ASIFormDataRequest库向服务器实现发布数据时出现问题,我已经应用了Edit> Refactor>转换为Obj-c语法
答案 0 :(得分:4)
首先,你应该有一个计划尽快摆脱ASIHTTPRequest。这是discontinued since September 2011。如果你正在开始一个新项目,你现在应该切换到别的东西。我建议AFNetworking;有一个介绍here。
如果您正在尝试维护较旧的项目,请继续阅读。
您在此处遇到的编译器错误是因为ASIHTTPRequest代码早于2011年引入的自动引用计数(ARC)。您可以阅读the ARC transition in Apple's documentation。使用ARC,编译器会在适当的位置插入等效的retain
,release
和autorelease
。不允许在代码中调用这些函数。
确实有将MRR代码迁移到ARC的工具,但没有必要改变这个库。只需在ASIHTTPRequest源的Compile Sources构建阶段设置-fno-objc-arc
即可。更多详情here。
如果您真的复活了2011年或更早的项目,那么您的整个项目很可能不是ARC准备好的。在这种情况下,您可以为整个目标设置关闭ARC;您可以找到有关如何执行此操作的更多详细信息here。
但是,如果你没有复活旧项目,你应该只使用AFNetworking。它很现代,很活跃,而且很有效。
答案 1 :(得分:0)
使用ARC,编译器会在正确的位置插入retain
,release
和autorelease
。因此,程序员无法使用这些消息。