0

我的应用程序使用 ARC,但我使用的是在没有 ARC 的情况下编译的库,特别是 UAModalPanel。我想在这个类的一个视图中添加一个子视图,我需要做些什么特别的事情来确保保留该子视图,然后在不再需要时将其释放?(添加后,我不会在我的主代码中保留对该子视图的引用)

4

1 回答 1

1

只要您的代码和库的代码遵循KVC 命名约定,ARC 和非 ARC 是兼容的,您无需担心在使用其中一种或另一种编译的模块之间交换对象。ARC 被明确设计为以这种方式透明。如果您非常仔细地遵守规则,它只是插入您自己添加的保留和释放。当它知道方法调用中涉及的所有代码都是 ARC 时,它确实有一些优化技巧,但是它可以在运行时自动检测到这一点,并且如果它调用非 ARC 代码,它将进行优化。

于 2013-11-11T17:28:23.603 回答