使用typedef关键字,可以为已有的类型起个别名.记住,只是起了个名字,它并没有创建一个新的类型.这个别名的有效期跟普通的局部变量一样,就是在它所在的相应的{}内。
如:
typedef vector<string>::iterator vec_iter;
然后可以这样用了:
vector<string> names;
vec_iter it = names.begin();
利用typedef为指针类型起别名的时候,有一个非常重要的注意点:
如
typedef char* pChar;
const pChar p1; //这一句是const p1本身,即限制p1指针不能被修改,它所指向的内容则不受限制。
========
在类内使用typedef
#include <iostream>
class cl
{
public: //public的话才能在类外使用别名
typedef double width;
};
int main()
{
cl::width d = 3.3;
std::cout << d;
return 0;
}