在实现中创建View Controller实例和接口文件有什么区别?

时间:2011-07-27 20:15:28

标签: iphone objective-c uiviewcontroller uinavigationcontroller properties

这是一个普遍的问题。如果我们在接口( .h)文件中创建UIViewController实例并将其声明为属性并在实现( .m)文件中使用它来将其推送到当前视图而不是创建实例在implmentation文件本身并将其推送到UINavigationcontroller中的当前视图?

此致 萨米特

3 个答案:

答案 0 :(得分:1)

通常你将.h中的UIViewController定义为@interface的一个字段,因为你可能需要在多个点上访问它,或者保持指向该控制器的指针对你有用。 。如果你不需要这个,你可以简单地在.m中定义它,使用它然后释放(或自动释放)它。

答案 1 :(得分:1)

存在一些差异。通过使其成为属性,生成的代码将内置一些保留/释放逻辑。

此外,通过在.H文件中声明字段和属性,该成员实际上是“公共”的,并且现在可以从其他类中看到。如果您只在.M文件中定义了成员,则只能在您自己的类中访问它。

答案 2 :(得分:1)

在接口即.h文件中,我们只是声明变量而且只是对类的引用而不是INSTANCE ...请理解引用和实例之间的区别都不同。在.h文件中声明时,我们同意我们将在.m文件中使用该变量。我们可以实现它......另外2个答案也有自己的观点......