(三)#include与#import的区别、#import与@class 的区别

前言

刚做iOS的时候,有一天组长站在身后看我写代码,幽幽说了一句,你知道import之后<> 与""的区别吗,答曰:mmp,不知道,没看见赶功能么。卒

一、#include和#import的区别

include和import的作用一样的,主要区别在于使用import可以直接避免重复引用,include需要手动处理重复引用。
什么是重复引用呢。classA引用了classC,classB引用了classC,Class引用了ClassA和ClassB,那么就会报错了,亲测报错了哦。
那么上文提到的<>和""的区别呢。<>用于系统自带头文件的引用,""用于用户自定义文件的引用。

二、@class

@class声明一个类,它比较单纯。@class后面跟着的仅仅是个类名,这个类如何实现定义的暂时不知道(毕竟比较单纯)。如果需要知道类的实现定义还是需要import。看到之前说的@class可以防止死锁,这个我没太明白,我尝试了classA import classB,classB import classA,并没有报错。这个帖子如果有大神看到的话,可否帮我解答(估计是沉了)

整理自浪荡_notnil

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容