![C++ 从入门到项目实践(超值版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/805/26846805/b_26846805.jpg)
上QQ阅读APP看书,第一时间看更新
4.10 类型别名
![](https://epubservercos.yuewen.com/F7D2C7/15289822205524706/epubprivate/OEBPS/Images/Figure-P75_11345.jpg?sign=1739052948-j2VsACLqWfki0lhSFNaNfPUyYeHgF9E3-0-210ae86da193bf46991b487be2c78370)
typedef为现有类型创建一个易于记忆的新名字以及简化一些比较复杂的类型声明。使用最多的地方是创建易于记忆的类型名,用它来归档程序员的意图。但是typedef并不创建新的类型,它仅仅为现有类型添加一个同义字。
1. 定义基本数据类型别名
基本数据类型出现在所声明的变量名字中,位于typedef关键字右边。
例如:
![](https://epubservercos.yuewen.com/F7D2C7/15289822205524706/epubprivate/OEBPS/Images/Figure-P75_71888.jpg?sign=1739052948-LfwkMKKNOsoro2ebtkvBXAGi7nDM6nMl-0-d20d8769a21f27e4202eab77f9fffe1f)
此声明定义了一个int的同义字,名字为size。
2. 定义数组别名
例如:
![](https://epubservercos.yuewen.com/F7D2C7/15289822205524706/epubprivate/OEBPS/Images/Figure-P75_71883.jpg?sign=1739052948-2oAyuI5rpaUDGqRUjioskXcg0AVoRcmH-0-fa76ed09221eb0869a083b7b2be0688a)
此声明定义了一个int型数组的同义字,名字为Line。
3. 定义指针别名
typedef与函数指针,形式:typedef返回类型(*新类型)。
例如:
![](https://epubservercos.yuewen.com/F7D2C7/15289822205524706/epubprivate/OEBPS/Images/Figure-P75_71884.jpg?sign=1739052948-ch0pwjyUcT2RRycsdhmm41Ww0NeR4I4t-0-55dbf635ed6323b9632c5325c23c4430)
此声明定义了一个函数指针的同义字,名字为PFUN。
4. 定义结构体别名
例如:
![](https://epubservercos.yuewen.com/F7D2C7/15289822205524706/epubprivate/OEBPS/Images/Figure-P75_71885.jpg?sign=1739052948-quI9UXzYCm0UUW1395HSd8b81M5i5Az7-0-9d258588517eba3c0e259b8c4e7d2c65)
此声明定义了一个结构体的同义字,名字为Stu。