【发布时间】:2012-06-19 02:21:31
【问题描述】:
我想知道它有什么不同吗?如果它在我们的 m 文件中声明,是否每次我们使用时都会重新分配(从而消耗额外和冗余的内存),或者两种方式都意味着相同的事情,所以我声明的哪个文件没有任何不同?
【问题讨论】:
-
谢谢大家的回复。我现在明白了
标签: iphone objective-c xcode ios5 uiimagepickercontroller
我想知道它有什么不同吗?如果它在我们的 m 文件中声明,是否每次我们使用时都会重新分配(从而消耗额外和冗余的内存),或者两种方式都意味着相同的事情,所以我声明的哪个文件没有任何不同?
【问题讨论】:
标签: iphone objective-c xcode ios5 uiimagepickercontroller
唯一的区别是变量的范围。头文件中声明的变量将可用于类中的所有方法。在方法中声明的变量只能在该方法中访问。
就内存而言,通常在头文件或 .m 文件中声明变量没有区别。
【讨论】:
如果您在 *.h 中声明 UIImagePickerController.h,则每当您在其他类中导入 *.h 时,UIImagePickerController.h 也会被不必要地导入那里。
【讨论】:
如果你使用 in .h 应该存在于每个人中,如果 in .m 应该存在于函数中,并且如果你在 .m 中使用 @interface() 声明它应该是私有的,那么区别就是范围。
【讨论】: