我們已經看到過一種使用者(程式設計師)定義的資料型別:結構。除此之外,還有一些其它型別的使用者自定義資料型別:
c++ 允許我們在現有資料型別的基礎上定義我們自己的資料型別。我們將用關鍵字 typedef 來實現這種定義,它的形式是:
typedef existing_type new_type_name;
這裡 existing_type 是 c++ 基本資料型別或其它已經被定義了的資料型別,new_type_name 是我們將要定義的新資料型別的名稱。例如:
typedef
char c;
typedef unsighed int word;
typedef char* pchar;
typedef char filed[50];
這裡定義了四種型別別名(aliases)或者說新的資料型別: c, word, pchar 和 field ,它們分別代替char, unsigned int, char* 和
char[50],並非創造了新的特定型別,只是
代替而已
。這樣,我們就可以安全的使用以下**:
c mychar, anotherchar, *ptc1;
word myword;
pchar ptc2;
filed name;
*
如果在乙個程式中我們反覆使用一種資料型別,而在以後的版本中我們有可能改變該資料型別的情況下,typedef就很有用了。或者如果一種資料型別
的名稱太長,你想用乙個比較短的名字來代替,也可以是用typedef
。二.自定義資料型別(using)
另一種較新的定義型別別名的方法是,使用關鍵字 using,如:
using new_type_name = existing_type;
這樣,上面的 typedef 例子也可以定義如下:
using c = char;
using word = unsighed int;
using pchar = char*;
using filed = char [50];
用 typedef 和 using 定義型別別名在語義上是等價的。唯一的區別是,typedef 在模板(templates) 域中有一定的限制,而 using 確沒有這種限
制。因此,即使 typedef 有很長的使用歷史,在**中也更加常見,但 using 更加通用。
自定義資料型別
include include using namespace std typedef double weight,tall struct student int main cout for int i 0 i 4 i return 0 貼上正確的輸出 這裡tall和weight都是自己可以輸入的 ...
自定義資料型別 列舉型別
學習了乙個月c語言,卻從來沒有更新過部落格,沒有總結的學習是不完整的。好了,其實我是走c 方向的,就提前看了c 的有關內容。c 除了和c語言一樣常用的資料型別,他們還有允許使用者自己來設計的一些資料型別,比如列舉型資料,結構型資料和鍊錶。我就簡單的總結下列舉型別。列舉型別允許使用者自己來定義一種資料...
自定義資料型別 結構型別
c 中自定義資料型別還有一種稱為結構型別,並且把該型別的各種資料型別一一整合到其中。學號 型別 姓名 字串 學生年齡 整型 院系 字串 平均成績 浮點型 每個學生的資訊成為了乙個整體,雜亂的資料和每個學生一一對應了起來,方便管理。如果需要建立學生型別,就可以這樣寫。include using nam...