这是关于在IOS 5中的ARC。关于使用保留,释放ARC启用代码
假设它是ARC启用,我仍然使用代码保留释放等,有没有任何风险?还是会自动处理?
我知道ARC可以避免特定的文件。但在这种情况下,我没有做任何事情去除这个文件上的ARC。这个文件现在是一个混合(一些分配释放和一些分配没有释放)。
在这样的环境中预期的风险是什么? 感谢您的帮助!
--mia
这是关于在IOS 5中的ARC。关于使用保留,释放ARC启用代码
假设它是ARC启用,我仍然使用代码保留释放等,有没有任何风险?还是会自动处理?
我知道ARC可以避免特定的文件。但在这种情况下,我没有做任何事情去除这个文件上的ARC。这个文件现在是一个混合(一些分配释放和一些分配没有释放)。
在这样的环境中预期的风险是什么? 感谢您的帮助!
--mia
不能使用ARC retain
或release
启用代码。这是不允许的 - 编译器会报错。如果您没有向编译器明确指示文件不应该在启用ARC的情况下编译(使用-fno-objc-arc
标志),并且您调用release
,则代码将无法编译。
希望有帮助!
假设已启用ARC,我仍然使用保留的释放等,在代码
你不能。如果你这样做,你会得到一个编译器错误。
Mia,这实际上是不真实的。如果你使用Clang从命令行进行编译,并告诉它使用带有-fobjc-arc
标志的ARC,那么你可以使用[object release]等等。它似乎是一个阻止使用这些内存管理调用的xCode事物。
然而,像LXT是在暗示,如果ARC是在Xcode项目启用,除非您明确添加-fno-objc-arc
的编译器标志为需要在您的项目文件,你会不能够调用释放/保留。
哦,那是一个愚蠢的问题,然后:)。对不起。我实际上认为我已经在示例项目中检查了ARC。现在我在设置中重新检查,它被禁用。不管怎样,谢谢。 – mia 2012-01-06 11:54:13