typedef

维基百科,自由的百科全书
跳转到: 导航, 搜索

在C和C++程式語言中,typedef是一個關鍵字。它用來對一個資料類型起一個新名字。目的是為了使原始碼更易於閱讀和理解。

來看以下程式碼:

int coxes;
int jaffa;
...
coxes++;
...
if (jaffa == 10)
...

現在來看以下程式碼:

typedef int Apple;
typedef int Orange;
Apple coxes;
Orange jaffa;
...
coxes++;
...
if (jaffa == 10)
...

這兩段程式碼都做同樣的一件事。第二個例子使用了 typedef,使其更易於了解將要進行什麼。也就是一個變數包含關於蘋果的資訊,而另一個包含關於橘子的資訊。

再來一個例子:

struct var {
int data1;
int data2;
char data3;
};

此處使用者定義一個資料類型 var

像這樣建立一個 var 類型的變數,程式碼必須寫為(注意,在 C++ 中宣告一個 struct 時,同時也隱含了 typedef,C 則沒有):

struct var a;

在例子的最末處加入一行語句:

typedef struct var newtype;

現在要建立類型 var 的變數時,程式碼可以寫為:

newtype a;

這樣就更容易閱讀了,因為不用再為每一個 var 類型的變數加上關鍵字 struct

也可以給陣列使用 typedef 宣告。

typedef BaseType NewType [arrSize];

這樣就可以在宣告一個 BaseType 類型和 arrSize 大小的新陣列時,將程式碼寫為:

NewType array;
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。