OC和Swift中的Options
来源:互联网 发布:小伙领证前悔婚 知乎 编辑:程序博客网 时间:2024/05/22 16:59
1. OC 和 Swift 中的区别
OC中定义Options
typedef NS_OPTIONS(NSUInteger, OCOptions) { OC_Sound = 1 << 0, OC_Title = 1 << 1, OC_Vibrate = 1 << 2,};
Swift 中定义Options
// 需要实现OptionSetType协议struct SwiftOptions: OptionSetType { let rawValue: UInt init(rawValue: UInt) { self.rawValue = rawValue } static let Swift_Sound = SwiftOptions(rawValue: 1 << 0) static let Swfit_Title = SwiftOptions(rawValue: 1 << 1) static let Swift_Vibrate = SwiftOptions(rawValue: 1 << 2 )}
* 在Swift中,可以调用OC的Options,但是,在OC中,不能调用Swift中的Options。 *
在OC中,不能调用Swift中定义的:
- Generics
- Tuples
- Enumerations defined in Swift without Int raw value type
- Structures defined in Swift
- Top-level functions defined in Swift
- Global variables defined in Swift
- Typealiases defined in Swift
- Swift-style variadics
- Nested types
- Curried functions
2.操作
并操作(Union)
* ObjectiveC *
OCOptions options = OC_Sound | OC_Title;
* swift *
let options = Swift_Sound.union(Swift_Vibrate)print(options)
删除选项组合的一部分
* ObjectiveC *
OCOptions options = OC_Sound | OC_Title; // 3// 删除OC_Sound选项OCOptions modifiedOptions = options & (~OC_Sound); // 2
* swift *
let options = Swift_Sound.union(Swfit_Title) // 3let modifiedOptions = SwiftOptions(rawValue: options.rawValue - Swfit_Title.rawValue) // 1
0 0
- OC和Swift中的Options
- OC和Swift中的static
- swift中的options
- Swift Swift和OC混编
- oc 和 swift 混编
- Swift和OC混用
- Swift和OC混编
- OC和Swift混编
- swift和oc混编
- swift和OC混编
- Swift 和 OC 注释
- OC和Swift混编
- OC、swift混编中的相互跳转和传值
- OC和Swift中的简单的单例
- swift中的get方法和oc的区别
- OC与Swift中的字符串
- [Swift]Swift中的!和?
- OC和Swift混编(惊喜!)
- iOS开发之真机调试的情况下获取并查看数据库
- git学习
- c++ 初学者
- com/android/dx/command/dexer/Main : Unsupported major.minor version 52.0
- c语言基础
- OC和Swift中的Options
- iOS学习笔记-如何获取xib的autolayout后的frame
- 倒计时
- 敏感词库
- 【WHUST 2016 Individual Contest #2】解题报告
- c/c++第一天
- 【经典算法】——KMP,深入讲解next数组的求解
- 【solr 基础篇三】SolrJ的入门使用
- iOS网络请求工具oc版,swift版基于AFNetworking的简单封装