zoukankan      html  css  js  c++  java
  • @class和#import

    @class

    作用:

      可以简单的引用一个类

    简单使用:

      @class Dog;

      仅仅是告诉编译器,Dog是一个类;并不会包含Dog这个类的所有内容

    具体使用:

      在.h文件中使用@class引用一个类

      在.m文件中使用#import包含这个类的.h文件

    作用上的区别

      #import会包含引用类的所有信息(内容),包含引用类的变量和方法

      @class仅仅是告诉编译器有这么一个类,具体这个类里有什么信息,完全不知道

    效率上的区别

      如果有上百个头文件都#import了同一个文件,或者这些文件依次被#import,那么一旦最开始的头文件稍有改动,后面引用到这个文件的所有类都需要重新编译一遍,编译效率非常低

      相对而言,使用@class方式就不会出现这种问题了

    其他使用场景

      对于循环依赖关系来说,比如A类引用B类,同时B类也引用A类

      这种嵌套包含的代码编译会报错

      当使用@class在两个类相互声明,就不会出现编译报错

  • 相关阅读:
    Cocos2d-x 内存管理
    Cocos2d-x 解惑
    前端最实用、全面的工具类方法
    Java web 项目获取时间的方式列举
    Win系统常用指令
    Js三级下拉列表联动
    Js数组操作
    常用网站推荐
    最常用的正则表达式
    Oracle数据库学习
  • 原文地址:https://www.cnblogs.com/saurik/p/4831380.html
Copyright © 2011-2022 走看看