swift&&OC

宏定义

OC中的宏定义

#define RGBCOLOR(r,g,b) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:1]

swift中的宏定义

OC中宏定义的方式,在swift中是不可用的,在swift中,宏定义其实就是定义一个全局常量或者全局函数

func RGB(_ r:CGFloat,_ g:CGFloat,_ b:CGFloat) -> UIColor {
    return RGBA(r, g, b, 1.0)
}

func RGBA(_ r:CGFloat, _ g:CGFloat, _ b:CGFloat, _ a:CGFloat) -> UIColor {
    return UIColor(red: (r)/255.0, green: (g)/255.0, blue: (b)/255.0, alpha: a)
}

let MainColor = RGB(255, 255, 255);

swift编写framework

为了在OC编写的项目中也能正常使用,有几个点需要注意

  • 公开的类: 权限在public及以上
  • 公开类的公开函数: @objc public
  • 公开类的公开变量、常量: @objc public
  • 枚举:@objc public,并且需要继承Int
@objc public enum ErrorType: Int {
    case noError
}

  • 全局常量、全局函数:像上面说的swift中的全局常量、全局函数在OC中是没办法取值、调用的,唯一的办法就是另外创建一个类,通过这个类间接取值
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 0、导入头文件。 oc类使用swift类,必须导入头文件appname-swift.h,该文件不可见,但可以点进去...
    悃破阅读 3,187评论 4 2
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,150评论 1 32
  • 参考资源《swifter》https://github.com/iOS-Swift-Developers/Swif...
    柯浩然阅读 1,480评论 0 6
  • 初次看到这两个单词 Covariance, Contravariance也许很茫然, 先解释一下这两个单词的由来,...
    跷脚啖牛肉阅读 546评论 0 1
  • 自从爱人怀上孩子后,深切的感受到风俗习惯的力量,很多时候,不得不思考,林林种种的这些所谓规矩,究竟是风俗习惯还是迷...
    左夕阅读 288评论 0 0