关于@class和#import".h"(只是个人理解,如有错误请原谅)
2015-04-01 16:58
417 查看
@class和#import区别
我自己理解为@class一般在.h里用,#import在.m里面用。
因为在.h文件里只是声明某个类别,具体不会用到类里面的方法,所以用到某个类时只要声明某个类@class,而在.m里面可能会用到某个类里面的方法就要用#import。
其实一般情况下大家都在.h里面用#import,省的再用@class,只有头文件包含太多类,编译发现很多都相互引用导致编译错误是才会去@class。
我自己理解为@class一般在.h里用,#import在.m里面用。
因为在.h文件里只是声明某个类别,具体不会用到类里面的方法,所以用到某个类时只要声明某个类@class,而在.m里面可能会用到某个类里面的方法就要用#import。
其实一般情况下大家都在.h里面用#import,省的再用@class,只有头文件包含太多类,编译发现很多都相互引用导致编译错误是才会去@class。
相关文章推荐
- "java.lang.NoClassDefFoundError"错误——一个关于classpath设置的问题
- 关于"使用注册为 allowDefinition='MachineToApplication' 的节是错误的"的解决方案
- VS 如何自动生成 aspx.designer.cs文件内容(解决"The base class includes the field ''"错误)
- 关于安装.NET Framework 2.0时偶然碰到的问题(提示"Error 205015. 安装程序集..../System.EnterpriseServices.dll失败,原因是出现了系统错误:拒绝访问。")
- 深入理解C/C++混合编程(关于#ifdef __cplusplus extern "C" {...}的用法)
- 关于hibernate中的错误:Exception in thread "main" org.hibernate.hql.internal.ast.QuerySyntaxException: tb_e
- codeblocks进行C++开发 向工程中添加Class 发生编译错误:"No such file or directory" 解决方案
- Property xxx cannot be found in forward class object "XXXXX" 错误
- 关于js中单引号(')和双引号(")的使用以及转义的理解
- Android中使用AlertDialog,使用函数setButton()出现的关于“new OnClickListener"错误
- 关于 "java中常量定义在interface中好还是定义在class中好" 的一些思考
- 关于bash与sh的话题(限于一般linux),以下个人的一些总结及理解,有理解错误的地方还望指点
- VC引入lib库并解决连接错误unresolved external symbol "__declspec(dllimport) const DllClass::`vftable'" (__imp_?
- iOS - @class ,#import" ",#import<>的区别
- 关于 error LNK2001: unresolved external symbol "public: static class CString 错误处理
- objective-c 关于import与@class的理解
- Unable to find a value for "Sex" in object of class ...错误
- 关于写入文件缓存时报"java.io.FileNotFoundException open failed (is a director)"错误的解决方法
- 个人对Spring @Scope("prototype")的一些理解
- 关于编译错误:"_OBJC_CLASS_$_XXXXXX", referenced from: