微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

objective-c – 这两个枚举之间有什么区别

所以在我的旅行中,我看到enums的定义是这样的(当需要一个位图时)

enum {
    UIControlStatenormal       = 0,UIControlStateHighlighted  = 1 << 0,// used when UIControl isHighlighted is set
    UIControlStatedisabled     = 1 << 1,UIControlStateSelected     = 1 << 2,// flag usable by app (see below)
};

但是,我刚刚看了NSJSONSerilization类,遇到了这样定义的枚举

enum {
    NSJSONReadingMutableContainers = (1UL << 0),NSJSONReadingMutableLeaves     = (1UL << 1),NSJSONReadingallowFragments    = (1UL << 2)
};
typedef NSUInteger NSJSONReadingOptions;

所以我想我的问题是UL做了什么. 1<< 1之间的区别是什么? 1和1UL<< 1

解决方法

在C中,UL仅表示文字是无符号长整数类型.认的整数文字是int.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐