IOS 面试
2016-02-20 21:46
330 查看
1. #import , #include的区别
@import防止类的重复引用,#import 确定一个文件只能被导入一次,这使在递归包含中不会出现问题。@class一般用于头文件中需要声明该类的某个实例变量的时候用到,在m文件中还是需要使用#import
@class就是告诉编译器有这么一个类,至于类的定义是啥不知道。
2.#import<> 跟 #import “” 有什么区别
“”的意思是自己创建的文件,用这个首先会在当前的目录中寻找,如果找不到就到其他的位置寻找,“”和<>是相对的一个是自己创建的文件一个是系统的文件。3.OC中instanceType和id的区别
相同点:instanceType和id都是作为方法的返回类型而被使用。不同点:
1.instancetype可以返回和方法所在类相同类型的对象,id返回的类型只能是未知类型的对象;
对于简易构造函数,用instancetype更好一点,因为编译器因此会知道返回的是什么类型的方法对象,而用id则不会,它只会返回未知类型的对象;
2.instancetype在错误检查机制上更优于id,由于instancetype能够在无关联返回类型中返回对象的类型,因此更利于开发者检测 到无关联返回类型中的错误。而id返回的是未知类型,在无关联返回类型中检错时没有instancetype更易于检测错误。
相关文章推荐
- 2016.2.20 面试归来
- 程序员的故事 001 小眼镜入职
- java - 常见面试题
- 心路历程(五)-find work and find house
- 前端程序员必知的30个Chrome扩展-[转载]
- 【面试题】向一个长度为100的int数组,插入1-100的随机数,不能重复
- 这几年遇到的奇葩程序员(1)
- 《程序是怎么跑起来的》读书笔记二-对程序员来说CPU是什么
- Java程序员应该知道的10个调试技巧
- 百度校招面试题
- 面试需知
- PHP面试题汇总(一)
- 项目维护开发:一个优秀程序员从接手到熟悉的智慧
- 笔试面试题之SplitIp(出自网易)
- 笔试面试题之friend set(出自网易)
- 笔试面试题之wordcount(出自网易)
- 为什么频繁的跳槽
- 程序员面试金典 1.3 确定两串乱序同构
- 程序员面试金典 1.2 原串翻转
- java web面试题,收集