typedef作用是用简单的类型名代替复杂的类型名,这样易于理解,方便表示。如
typedef int Integer 指定Integer为类型名,作用于int 相同
Integer i 与 int i 等价。
复杂点的情况是定义函数指针,如
typedef void (*fun)(void)
表示用户自己定义了一个函数指针数据类型,fun ptr,即定义了一个函数指针ptr,可将函数地址赋给该指针,如
ptr=File; (File为一函数,函数名即地址,File()的入口地址赋给ptr,以后就可以用ptr来调用该函数)
ptr();
或 (*ptr)(); // 调用函数File()
代码测试:
#include<iostream>
using namespace std;
void test(){
cout<<"test1\n"<<endl;
}
void main (){
typedef void (*fun)();
fun ptr;
ptr = test;
ptr();
//(*ptr)();
}
关于typedef声明新类型名,布布扣,bubuko.com
原文地址:http://www.cnblogs.com/xsfantasy/p/3861202.html