iOS_@class_#import ""_#import <>_#include<>_#include ""

一、概念

@class 、#import “”、#import <> 、#include <>、#include "",都是类导入的语句。

二、区别

1. OC:@class 、#import ""、#import <> 用于OC语言。
  1)@class :前向引用,为了解决循环导入问题(循环导入,会引起对象无法释放,造成内存泄漏,编译器也不允许),只是会告知当前类有这样一个类,但是这个类具体属性方法一概不知。
  2)#import "":导入一个程序员在项目中自己创建的类。
  3)#import <>:导入一个系统类(或者其他静态类库)。
2. C/C++:#include <>、#include "" 用于C语言。
  1)#include "":引用的是你程序目录的相对路径中的头文件。(随项目动)
  2)#include <>:引用的是你编译器的类库路径里面的头文件。(随编译器动,而编译器一般不动,所以这个路径基本是不变的)。

三、事例

  • @class :
    这里我们有一个ViewController类,和一个TwoViewController类 ,两个类相互引用。

首先展示:ViewController.h 文件

//
//  ViewController.h
//  forGoogle
//
//  Created by 郎震 on 2018/8/28.
//  Copyright © 2018年 OrganizationNameZL. All rights reserved.
//

#import <UIKit/UIKit.h>
// 首先得在.m 文件中引用了这个TwoViewController 类
@class TwoViewController;

@interface ViewController : UIViewController

@property (nonatomic, strong) TwoViewController *two;

@end

其次展示:ViewController.m 文件

//
//  ViewController.m
//  forGoogle
//
//  Created by 郎震 on 2018/8/28.
//  Copyright © 2018年 OrganizationNameZL. All rights reserved.
//

#import "ViewController.h"
#import "TwoViewController.h"
@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
}


- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}


@end

那,现在TwoViewController类的引用方式一样,所以我把 它的引用方式不再显示在本文。

  • #import "" 和 #import <> 是讲 类文件,直接导入到引号里面就好。不多说。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1.ios高性能编程 (1).内层 最小的内层平均值和峰值(2).耗电量 高效的算法和数据结构(3).初始化时...
    欧辰_OSR阅读 30,271评论 8 265
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,679评论 1 32
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,678评论 19 139
  • 前两天心神不宁,一直担忧有事发生。 今日收到母上信息,大舅妈已经离我们而去。 我出生在一个...
    JerryLi123阅读 461评论 1 0
  • 爸爸 你慢点儿走 你可曾记得我呱呱坠地的小脸庞 你可曾记得我牙牙学语的小嘴唇 昨天我摔坏了你的手机你生气吗 妈妈 ...
    葡萄树的好枝子阅读 267评论 0 1

友情链接更多精彩内容