typedef用法小结
来源:互联网 发布:九次方金融数据 编辑:程序博客网 时间:2024/06/11 00:04
最近看Scintillia的源代码,总看到typedef的身影,朋友也说autodesk的面试官曾说过不懂typedef很差劲。于是查了网上的资料,看了几种比较
容易出错的常用用法,做了一些整理。
一.起别名的两种用法比如pInt a,b;
1. typedef (int *) pInt;
2. typedef pInt (int *)
2. typedef pInt (int *)
第一种表示: int*a;int*b;
第二种表示: int*a,b;
所以第一种更像一个类型,第二种更像宏。
二.旧式代码中声明对象
typedef struct tagPoint
{
Int x;
Int y;
}POINT;
POINT a,b;
{
Int x;
Int y;
}POINT;
POINT a,b;
三.代码简化
为复杂的声明定义一个新的简单的别名
方法:在原来的声明里逐步用别名替换一部分复杂声明,如此循环,把带变量名的部分留到最后替换,得到的就是原声明的最简化版
typedef int (*PF) (const char *, const char *);
这个声明引入了 PF 类型作为函数指针的同义字,该函数有两个 const char * 类型的参数以及一个 int 类型的返回值。
如果要使用下列形式的函数声明,那么上述这个 typedef 是不可或缺的:
PF Register(PF pf);
Register() 的参数是一个 PF 类型的回调函数,返回某个函数的地址,其署名与先前注册的名字相同。如果不用 typedef,那么代码是这样的:
int (*Register (int (*pf)(const char *, const char *)))(const char *, const char *);
- typedef 用法小结
- typedef用法小结
- typedef用法小结
- typedef用法小结
- typedef用法小结
- typedef用法小结
- typedef用法小结
- typedef用法小结
- typedef 用法小结
- 转,typedef用法小结
- typedef 用法小结【转载】
- typedef用法小结
- typedef用法小结
- typedef用法小结(转)
- typedef用法小结
- typedef用法小结
- typedef用法小结
- typedef用法小结
- WebService大讲堂之Axis2(1):用POJO实现0配置的WebService
- DataValidate.js
- 人生若只如初见
- 我的学术blog..第一篇..!
- 贝叶斯介绍
- typedef用法小结
- 一种软阴影的实现方法
- EAN128/CODE128码生成
- 配置 authorization deny allow
- Java面试题及答案(基础题122道)
- 单向链表:在插入值的同时要进行排序
- Cassandra Consistency Level
- 学习asp.net的流程
- 打开文件对话框与目录选择对话框