@class
作用:可以简单地引用一个类(提高编译器性能)
简单实用
@class Dog
仅仅是告诉编译器:Dog是一个类; 并不会拷贝Dog这个类的内容
注意
由于@class仅仅告诉编译器这是一个类,编译器不知道这个类中的属性和方法,所以在.m中使用这个类时需要#import这个类才能使用.
具体实用
在.h文件中实用@class引用一个类
在.m文件中使用#import包含这个类的.h文件
总结
1.若在.h文件中使用#import,例如:person.h中引用了car.h,car.h中引用了wheel.h.若wheel.h有一点改变,car.h也会改变,person.h也会改变,降低了编译器性能.所以在.h文件中使用@class,在.m文件中要使用时再用#import引用.
2.如果在.h中用@class,在.m中#import,那么如果一个文件发生了变化,只有和这个文件有直接关系的文件才会重新拷贝,所以在.h用@class可以提升编译效率
3.如果两个类相互拷贝,会报错.
如何解决:在.h中用@class,在.m中用#import.交叉引用就不会形成死循环.

iOS @class相关推荐

  1. Xcode couldn‘t find any iOS App Development provisioning profiles matching ‘com.example.***‘

    在更新完iOS14.3后,Xcode真机调试时报错,无法进行真机测试: 报以下错误: No profiles for 'com.example.software.Login' were found: ...

  2. iOS视频硬编码技术

    iOS视频硬编码技术 一.iOS视频采集硬编码 基本原理 硬编码 & 软编码 硬编码:通过系统自带的Camera录制视频,实际上调用的是底层的高清编码硬件模块,即显卡,不使用CPU,速度快 软 ...

  3. iphone smtp服务器没有响应,电子邮件卡在iPhone或iPad上的发件箱?如何修复iOS中的未发送邮件 | MOS86...

    您曾经在iOS中发送电子邮件,只能将信息卡在iPhone,iPad或iPod touch的邮件应用发件箱中?你知道这是什么时候发生的,因为在iOS的Mail应用程序的底部,状态栏在iOS中显示1个未发 ...

  4. layer弹窗在IOS上,被软键盘挤到上边的解决方法

    就像这种情况,经过多番请教跟尝试,找到一个能解决这个问题的方法,但可能有点笨重.就是在当前弹框里,设置offset的值,里边的值可以随意写,然后再下边给弹框追加一个样式即可. <!DOCTYPE ...

  5. iOS开发8:使用Tool Bar切换视图

    之前讨论的都是单视图应用程序,而在实际应用中,我们可能要多个视图,并根据用户的需要切换视图. iOS中几种典型的多视图程序: (1)Tab Bar Application:程序的底部有一排按钮,轻触其 ...

  6. 25个增强iOS应用程序性能的提示和技巧 — 中级篇

    本文由破船译自:raywenderlich 转载请注明出处:BeyondVincent的博客 _____________ 在开发iOS应用程序时.让程序具有良好的性能是非常关键的.这也是用户所期望的. ...

  7. iOS Webview打开不受信的URL

    在我们开发过程中经常会碰到直接访问开发人员的私有地址, 这样在app 上是无法打开指定的网页的. 在iOS中需要对WKWebView 进行如下设置: 1.在工程的Plist 文件中添加一下选项 App ...

  8. iOS蓝牙开发---CoreBluetooth[BLE 4.0] 初级篇[内附Demo地址]

    一.蓝牙基础知识 (一)常见简称 1.MFI  make for ipad ,iphone, itouch 专们为苹果设备制作的设备,开发使用ExternalAccessory 框架(认证流程貌似挺复 ...

  9. iOS 开发经验总结

    iOS 开发经验总结http://www.cocoachina.com/ios/20170216/18699.html 1.cocoa pods 常用的framework 1 2 3 4 5 6 7 ...

  10. iOS开发-xcdatamodeld文件 CoreData的介绍和使用,sqlite的使用

    CoreData的介绍和使用  源引:http://www.jianshu.com/p/d027090af00e CoreData是数据存储的一种方式,CoreData实质也是对SQLite的封装. ...

最新文章

  1. Hat’s Words(字典树)
  2. 如何在Ubuntu/CentOS上安装Linux内核4.0
  3. MySQL数据库-完全备份及恢复
  4. UI组件之 ProgressBar及其子类(一)ProgressBar进度条的使用
  5. input点击事件不能用_用js简单写一个计算器
  6. 2019-03-14-算法-进化(移动零)
  7. 启动马达接线实物图_电工外出接单从事配电柜接线、调试工作的三个要领
  8. 面试问题记录 2019.3.22(中国铁道科学研究院)
  9. 将python程序打包成可执行文件exe
  10. php 获取顶级域名、一级域名
  11. Xshell使用基础教程
  12. 倡导非盗版,自己常用的一些软件集锦
  13. 手机App测试的相关测试点-简单总结
  14. 联想服务器重装系统快捷键,联想电脑重装系统按什么快捷键
  15. Ubuntu通过有线路由器上网
  16. 【学习生涯】预科学习笔记
  17. 信息学奥赛一本通1055《判断闰年》C++方法+Python方法
  18. 【微信聊天发的表情看不到,显示错误】
  19. HuskyLens人工智能摄像头
  20. 关于狄利克雷分布的理解

热门文章

  1. 什么是arm-arm体系架构版本(指令集版本)-arm内核版本
  2. Ubuntu根目录终极清理
  3. yuv视频转png图片
  4. 艾永亮:智能玩具无法下沉市场,超级产品玩具难再现
  5. java常用7款反编译工具
  6. 你是否了解APP耗电问题?深入探索 Android 电量优化,醍醐灌顶
  7. EasyExcel无法生成文件也不报错的问题
  8. 点乐告诉你一些开发者的事:移动开发者如何获取免费流量
  9. 【Zotero文献管理】Zotero 电脑端配置好了坚果云同步,iPad端不能同步?PDF无法下载?
  10. Scrapy框架爬虫小说网工作流程