C ++ 2.5.1処理タイプ:タイプの別名

記事のディレクトリ

タイプの別名

typedefは、cpp11を用いて従来の方法では、使用して使用することができます

typedef int mi; //int 别名 mi
mi xa = 88;
using mii = mi; //mi别名mii
mii xb = 88;
cout << (xa == xb) << endl; //output 1

ポインタ型の別名

typedef char* ps; //指向 char 的指针; char* 的别名 ps;
char xx = 'X';
const ps str = &xx; //指向 char的 常量指针
*str = 'F'; //地址指向值可变
//str = &zz; //常量指针的地址不可变,本句会 error
cout << *str << endl;

チャーは*式に代入psの代表は、場合const ps str = &xx;になりますconst char* str = &xx;
(効果がない、前にライトポインタクローズ型や変数の後に)
このフォームの研究に、一定のポインタ、根底にあるのconstである、ことはできません*指针变量割り当て。実際には、ここで割り当てられます。そして、ポインタ変数のアドレスを変更することはできません。これは、トップレベルのconst「変数自体を変更することはできません(アドレス)」特徴であるラインポインタ定数、で確かです。

const ps *p; //常量指针的指针
p = &str;
cout << **p << endl; //输出 F

//既然 p 是常量指针的指针,重点是,它就是一个指针,可以修改地址,指向一个 char(常量)的地址
char zz = 'Z';
char * q = &zz;  //这里改成常量指针形式 char *const q = &zz; 也是一样的结果
p = &q;
cout << **p << endl; //输出 Z

このポインタ型の別名は単にピットです。

公開された400元の記事 ウォンの賞賛364 ビュー162万+

おすすめ

転載: blog.csdn.net/jjwwmlp456/article/details/104046848