[OC&Swift] 混编遇到的的坑

先列一个目录

  • Swift中使用YYModel
  • OC调用Swift定义的枚举
  • Swift创建的类,在OC文件的.m中可被识别,在.h文件中不可被识别
  • Swift类中如何使用#if DEBUG

Swift中使用YYModel

定义的变量前必须加上 @objc

对于int等类型 会报错:Property cannot be marked @objc because its type cannot be represented in Objective-C

因为在swift中Int等类型为结构体,所以需要这样
@objc var count: Int = 0

OC调用Swift定义的枚举

需要这么定义

@objc public enum LFUserListCellType : Int {
    case normal
    case follow
}

Swift创建的类,在OC文件的.m中可被识别,在.h文件中不可被识别

这个就比较坑爹了,按理说在OC的类中 #import "projectName-Swift.h"即可,但是如果在.h里识别不了的话,还得需要做如下操作

.h中声明下@class SwiftClass

Swift类中如何使用#if DEBUG

在项目的Build Settings里配置Swift Compiler - Custom Flags,展开Other Swift Flags,在Debug右侧输入"-DDEBUG"

参考链接

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,033评论 3 119
  • 红豆 文/兰雪 一粒种子 繁衍着 浓的化不开的相思 一颗红心 跳动着 难以搁浅的悸动 一片枯叶 静默成 千年火红的...
    我是兰姐阅读 508评论 2 4
  • 广义的散文,对韵文而言。狭义的散文似乎指带有文艺性的散文而言,那么,小说、小品文、杂文都是的。最狭义的散文是文艺的...
    青衫湿旧阅读 1,244评论 4 16
  • 、补水 补水最好是补充进皮肤里面的,很多宝宝觉得夏季很少有缺水的状况,可能是皮肤太油腻带来的错觉,其实是水油不平衡...
    秋舞阅读 148评论 0 0