Objective-C向前引用
来源:互联网 发布:html源码怎么用 编辑:程序博客网 时间:2024/04/30 13:59
在声明某个实例变量或属性的类型时,编译器需要知道那种类型。视图控制器的头文件已经导入常见的IOS头文件中,因此可以访问到所有这类型的定义。
要实现新类的声明,有两种方法。第一种方法是导入这个新类的头文件。要构建Car类的属性,需要使用#import”Car.h”语句
另一种方法是针对Car这个类,使用@class Car声明“向前引用”;告诉编译器Car是合法的类,并且在某处定义。通常,在.h文件中使用@class,在.m文件中使用#import。
使用向前引用有三个原因。第一个是加速代码的构建。在目前已经做完的小项目中,根本不存在这个问题,但是在有着树状子类的更大项目中,Xcode需要处理头文件每个导入的文件。可能的是,每个头文件中,存在许多需要被处理的导入类,即使只有一个或两个实现文件才使用到这个类。
第二点是,也是不太普遍的一点,在于避免循环引用。在一个发生在当两个类最后引用彼此的实例变量时。也就是说,类A需要包含类B的一个属性,类B有类A的一个属性。通常,问题不会这么明显,属性是在其他类的子类中进行声明。
最后一个原因在于避免复杂,处于重用性考虑。
最有效的策略是在.h文件中使用@class,在.m文件中使用#import
资料来源于《ios开发完全上手》
0 0
- Objective-C向前引用
- Objective-C之@class,@protocol向前声明
- objective-c 引用计数
- Objective-C关联引用
- Objective-c 循环引用
- Objective-C关联引用
- Objective-C 引用计数
- Objective-C 循环引用
- Objective-C – 关联引用
- Objective-C – 关联引用
- Objective-C – 关联引用
- Objective-C - 自动引用计数器
- Objective-C - 循环引用问题
- Objective-C 引用计数原理
- Objective-C 引用计数原理
- Objective-C 引用计数原理
- C++ 向前引用声明
- static 非法向前引用
- 【mac】Bartender 2不能隐藏百度云同步盘图标的解决方法
- 第十六周项目二学生成绩处理2
- 技术团队的情绪与效率
- 使用Servlet处理http响应
- 嵌入式学习心得:关键字和宏定义
- Objective-C向前引用
- C语言总结(5)
- ios学习(十九)NSThread简单使用
- Android 低功耗蓝牙(BLE)开发(2)-- BluetoothAdapter详解
- vs2010设置堆栈大小
- WEB应用程序状态管理
- 【HTML5】图形组合
- 第二天 细说增删查改
- echo