typedef使用-C/C++

一、定義一種類型的別名,而不只是簡單的宏替換,可以用作同時聲明指針型的多個對象

typedef char* PCHAR;

PCHAR pa, pb; 

二、用在舊的C代碼中,幫助struct,C++中用不到

typedef struct tagPOINT
{
    int x;

    int y;
}POINT;

POINT p1; // 這樣就比原來的方式少寫了一個struct,比較省事,尤其在大量使用的時

三、用typedef來定義與平臺無關的類型。

比如定義一個叫 REAL 的浮點類型,在目標平臺一上,讓它表示最高精度的類型爲:

typedef long double REAL;

四、(重點、難點)函數指針的配合使用

typedef  返回類型(*新類型)(參數表)

typedef char (*PTRFUN)(int);  


原聲明:void (*b[10]) (void (*)());

變量名爲b,先替換右邊部分括號裏的,pFunParam爲別名一:

typedef void (*pFunParam)();

再替換左邊的變量b,pFunx爲別名二:

typedef void (*pFunx)(pFunParam);

原聲明的最簡化版:

pFunx b[10];


參考: http://blog.csdn.net/qll125596718/article/details/6891881  

http://www.cnblogs.com/csyisong/archive/2009/01/09/1372363.html 



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