C++类型别名细节

来源:互联网 发布:matlab cell矩阵 编辑:程序博客网 时间:2024/05/21 21:50

typedef double wages;

typedef wages base,*p;

此处把double 声明为wages,wages是double的别名。

后面base也是double的别名,*p也是doublle的别名。

新标准规定了一种新的方法:

using SI=Sale_Items;

定义对象时就可以直接: SI item;


指针、常量和类型别名

如果某个类型别名知道的是复合类型或常量,那么把它用到声明语句中就会产生意想不到的后果。

例如:

typedef   char   *pstring;

const pstring cstr=0;//cstr是指向char的常量指针

const  pstring *ps;;//ps是一个指针,它的对象是指向char的常量指针。

此处不能吧类型别名替换成它本来的样子,const char *cstr=0;//这是对const pstring cstr的错误理解。

而是char  *const cstr=0;

0 0
原创粉丝点击