typedef/结构体/枚举/
2016-03-09 00:58
211 查看
typedef ;——别名(类型的别名)
typedef目的一般有两个,
1.
一个是给变量一个易记且意义明确的名字;
2.
typedef int myInt;
另一个简化一些比较复杂的类型声名。
(1)机构体
typedef struct Student
{
int a;
}Stu;
于是在声明变量的时候就可以直接这样定义:Stu stu1;
如果没有typedef 就必须用 struct Student stu1;来声名stu1.
另外也可以不写Student。
但是也就不能这样定义了:struct Student stu1;
而只能这样定义: Stu stu1;
(2) 枚举
无类型名的枚举
typedef NS_ENUM(NSInteger, WebType) {
WebTypeMessageHelp, //乘客帮助
WebTypequestion, //常见问题
WebTypeUseterms, //使用条款
WebTypeAboutUS, //关于我们
WebTypeStatement, //法律条文
WebTypeServiceagreement //易出租服务协议
};
类型名BMKUserTrackingMode的枚举
typedef enum {
BMKUserTrackingModeNone = 0, /// 普通定位模式
BMKUserTrackingModeFollow, ///
定位跟随模式
BMKUserTrackingModeFollowWithHeading, ///
定位罗盘模式
} BMKUserTrackingMode;
(3)block
typedef void(^blockName) (parameterTypes);
__weak __typeof(self)weakSelf = self;
typedef目的一般有两个,
1.
一个是给变量一个易记且意义明确的名字;
2.
typedef int myInt;
另一个简化一些比较复杂的类型声名。
(1)机构体
typedef struct Student
{
int a;
}Stu;
于是在声明变量的时候就可以直接这样定义:Stu stu1;
如果没有typedef 就必须用 struct Student stu1;来声名stu1.
另外也可以不写Student。
但是也就不能这样定义了:struct Student stu1;
而只能这样定义: Stu stu1;
(2) 枚举
无类型名的枚举
typedef NS_ENUM(NSInteger, WebType) {
WebTypeMessageHelp, //乘客帮助
WebTypequestion, //常见问题
WebTypeUseterms, //使用条款
WebTypeAboutUS, //关于我们
WebTypeStatement, //法律条文
WebTypeServiceagreement //易出租服务协议
};
类型名BMKUserTrackingMode的枚举
typedef enum {
BMKUserTrackingModeNone = 0, /// 普通定位模式
BMKUserTrackingModeFollow, ///
定位跟随模式
BMKUserTrackingModeFollowWithHeading, ///
定位罗盘模式
} BMKUserTrackingMode;
(3)block
typedef void(^blockName) (parameterTypes);
__weak __typeof(self)weakSelf = self;
相关文章推荐
- EL 自定义函数
- GIT问题,error:src refspec master does not match any
- thinkphp-javascript ajax上传后台 post接收不到的原因
- ER实体关系
- UVALive 3942(使用数据结构trie树加速dp)
- angularjs-ui-router-animation
- Java常用类源码分析_DateFormat类
- C语言实现通讯录
- [PHP]利用XAMPP搭建本地服务器, 然后利用iOS客户端上传数据到本地服务器中(二.配置MySQL数据库)
- 2N皇后问题
- Zabbix 3.0 安装笔记
- Ruby On Rails使用Bootstrap框架
- JavaScript变量的作用域
- kidd风的IOS日志之IOSIOS-API概述
- JQuery 绑定select标签的onchange事件,弹出选择的值,并实现跳转、传参
- 【慕课笔记】5-2 字符流之文件读写流
- 自定义ViewPager
- Java常用类源码分析_Date类
- UVa 11651 Krypton Number System DP + 矩阵快速幂
- 时间转换