在C++中,typedef 有什么作用?

来源:百度知道 编辑:UC知道 时间:2024/05/20 09:12:30
今天做作业,看到别人的代码中有 typedef 可是不明白什么意思,我是初学者,希望能得到一个简单点的答案,简单也得让我明白。

相当于给一个原有的类型名取一个新名字,以后两者表示同一个类型,可以互换使用。
如:typedef int INTERGER
有了这个定义,以后就可以用诸如“INTERGER a”、“INTERGER b = 5”一类的句子来定义一个整型变量了。

在C++中typedef是用以给数据类型取别名(当然还有其他作用)

谭浩强那本《C语言程序设计》中关于用typedef声明一个新类型的步骤是这么说的:
1、先按定义变量的方法写出定义体(如:int i;)
2、将变量名换成新类型名(如:将i换成COUNT)
3、在最前面加typedef(如:typedef int COUNT)
4、然后可以用新类型名去定义变量

除了最后一步,从第三步倒着来看:
将最前名的typedef去掉,就变成了第二步
即去掉typedef后是一个定义体,只不过把一般定义体的变量名换成了新类型名(第一步与第二步的变化)。
所以只要看这个定义体中变量名位置上的名字,就知道新类型的名字,也容易看出是定义什么类型。

1、去掉typedef后变为:
int (WINAPI *PFNMESSAGEBOX)(HWND, LPCSTR, LPCSTR, UINT uType);
这是声明一个函数指针,变量名为PFNMESSAGEBOX(即新类型名)

2、去掉typedef后变为:
string array[10];
这应该是定义一个string类型的数组,变量名为array(即新类型名)

自定义变量类型;
typedef 声明,简称 typedef,
功能:为现有类型创建一个新的名字。
比如:程序编写者常常使用 typedef 来编写更美观和可读的代码。
所谓美观:typedef 能隐藏笨拙的语法构造、平台相关的数据类型,
从而增强可移植性和程序的可维护性。
编程中:使用typedef一般有两个目的,
①给变量一个易记且意义明确的新名字,
②简化一些比较复杂的类型声明。
如果要