476,OC和Swift混编(面试点:OC项目首次添加Swift文件时,Xcode会自动添加一个桥接文件,Swift类中使用OC类,将Swift类里面用到的OC类的.h文件导入这个桥接文件里面O...

1、OC项目

首次添加Swift文件时,Xcode会自动添加一个桥接文件。
Build Settings - Packaging - Define Module -> YES

Swift类中使用OC类

  • 将Swift类里面用到的OC类的.h文件导入这个桥接文件里面就行,如OCTestSwift-Bridging-Header.h

OC类中使用Swift类

  • 项目中有一个默认的Swift头文件,OC类中import这个头文件就行,如项目:OCTestSwift,则是OCTestSwift-Swift.h

特殊情况

  • OC类的.h文件中需要展示Swift类

此时需要
1、使用@class Swift类名.h;来声明Swift类
2、在.m中再#import "项目名称-Swift.h"
目的是防止循环导入,导致编译报错:找不到这个项目名称-Swift.h文件

2、Swift项目

基本和OC项目中使用Swift一致

不同点

  • 上面的特殊情况不存在

你可能感兴趣的:(476,OC和Swift混编(面试点:OC项目首次添加Swift文件时,Xcode会自动添加一个桥接文件,Swift类中使用OC类,将Swift类里面用到的OC类的.h文件导入这个桥接文件里面O...)