類型別名 typedef & using

類型別名 typedef & using

#include <iostream>
using namespace std;
/**
typedef
    1.類型別名 這時當我們在聲明定義的時候他就是類型,而不是變量名
    2.你可以再聲明任意變量名的時候,使用這個類型的別名,可以運行。但是問題是在這個變量名作用域範圍內再無法使用這個類型別名
    3.可以由“,”隔開,給他起好幾個名字,名字前加"*"表示該類型的指針
    4.可以對複合類型起別名,但是如果把他放在聲明的時候會有奇怪的效果。不能簡單的把別名替換爲原來的類型。
using
    1.介系c++支持的一種雷沒有玩過的傳新方法
    2.但是他好像不支持 在一行裏有多個別名,用“,”隔開,也不支持在別名前面加“×”號
    3.關於複合類型造成的問題他同樣有
*/
typedef int gjldw, *gjl;
typedef int whh,whhh;

typedef int * wocao;
typedef const int * wocao2;
typedef int * const wocao3;

using biu=char;
using biubiu=char *;
using biubiubiu=const char *;

int main(void)
{
    whh whhh;//令人窒息的操作
    char whh;
    //whh wb;//見2

    /***對與第四條的詳例***/
    int a;
    const wocao pa=&a;
    const int *pb=&a;//對於上一條語句別名簡單的替換,pa.pb不是一個類型
    /*問題一:pa,pb兩個分別是什麼類型?
        pa 常量指針
        pb 指向常量的指針
        可以用下面的修測試斷一下
    */
    //pa++; (*pa)++; pb++: (*pb)++;//四個裏那個會成功

    const wocao2 qa=&a;
    const wocao3 qb=&a;
    //可以思考一下這兩個又分別是什麼類型,他和上面的大同小異,我懶得再寫了。。。。

	return 0;
}

每次看到C++這些坑人的小點就難受,那些令人窒息的操作真是誰用誰難受,簡直就是在bug的邊緣試探。

上篇文章說36D胸口是假的...我只是個什麼都不懂的小男生...

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章