NS_ENUM & NS_OPTIONS】的更多相关文章

一般情况下,我们采用C风格的enum关键字可以定义枚举类型. enum{ UIViewAnimationTransitionNone, UIViewAnimationTransitionFlipFromLeft, UIViewAnimationTransitionFlipFromRight, UIViewAnimationTransitionCurlUp, UIViewAnimationTransitionCurlDown, } UIViewAnimationTransition; //位移操作…
When everything is an object, nothing is. So, there are a few ways you could parse that, but for the purposes of this article, this is all to say: sometimes it's nice to be able to drop down to the C layer of things. Yes--that non-objective part of o…
一般情况下,我们采用C风格的enum关键字可以定义枚举类型. enum{ UIViewAnimationTransitionNone, UIViewAnimationTransitionFlipFromLeft, UIViewAnimationTransitionFlipFromRight, UIViewAnimationTransitionCurlUp, UIViewAnimationTransitionCurlDown, } UIViewAnimationTransition; //位移操作…
1.enum可以声明一般类型和位掩码(bitmasked)类型 例如: enum Test{// 一般枚举 TestA, TestB, TestC, }; enum{// 匿名枚举 TestA, TestB, TestC, }; typedef enum _Test{ // 设置别名      TestA,      TestB,      TestC } Test; 2.NS_ENUM声明一般类型, NS_OPTIONS声明掩码(bitmasked)类型 typedef NS_ENUM(NSI…
摘自:http://coffeeandsandwich.com/?p=8 在 iOS 6 和 Mac OS X 10.8 以前,定义枚举类型的方式如下: typedef enum the_enum_name{ value_1, value_2, value_3 }the_enum_type_name; 注意:1.  the_enum_name 和 the_enum_type_name 可以是一样的.2. 你甚至可以不写 the_enum_name,只写 the_enum_type_name. 从…
SDWebImageCompat 是SDWebImage 的配置文件,里面利用条件编译对Apple 的各个平台进行了兼容.从源码中可以看到SDWebImage 支持当前的MAC/iOS/TV/WATCH 平台,这种适配各个平台的兼容,对框架开发意义重大. 1.#import <TargetConditionals.h> 导入这个头文件,能访问系统提供的配置选项.这个文件里面全部都是宏定义,主要定义了Apple 各系统平台和各CPU类型相关的宏.主要用于开发的时候针对不同的开发环境做配置使用.…
1. 内存管理-引用计数 2. 非对象类型  int float double char 3.运行时--编译器(编译时)函数调用 4.@class  缩短编译时间,降低依赖,耦合 5.使用字面量而不是alloc init,字面量是  a)使代码简洁易懂的语法糖, b)如果插入了nil对象,使用字面量会崩溃,便于查错, c)可变对象:@[@1,@2] mutableCopy 6.使用static const代替#define define不含变量类型, const表示不允许被修改, 对于通知字符串…
iOS开发中C语言的应用: 1. NS_ENUM & NS_OPTIONS http://nshipster.com/ns_enum-ns_options/…
clang -fobjc-arc -framework Foundation helloworld.m -o helloworld.out OVERVIEW: clang LLVM compiler USAGE: clang [options] <inputs> OPTIONS: -### Print (but do not run) the commands to run for this compilation --analyze Run the static analyzer -arcm…
这段时间因为工作需要,阅读了YYModel这个开源框架,至于它能做什么,最直白的讲述就是JSON与Model之间的相互转化. 源代码在Github,大家可以自行git clone或者download. 接下来,笔者主要分析阅读源代码而引出的各种问题与知识点,不足之处请大家指正. NS_ASSUME_NONNULL_BEGIN & NS_ASSUME_NONNULL_END 这组宏是成对使用的,不得不说我们自己写代码的时候使用的很少,以至于遗漏这个知识点,现在我们就来看看这两个宏会引出什么问题.…