官术网_书友最值得收藏!

2.1 C++對C語言數(shù)據(jù)類型的擴(kuò)展

C++語言的基本數(shù)據(jù)類型與C語言一致。也就是說,C++語言中的字符類型(char、signed char、unsigned char)、整型(int、short int、signed short int、unsigned short int、signed int、unsigned int、long int、signed long int、unsigned long int)、浮點(diǎn)型(float、double、long double)與C語言相同,可以在C++可以直接應(yīng)用它們。

但C++對C語言的結(jié)構(gòu)、聯(lián)合、枚舉等自定義數(shù)據(jù)類型進(jìn)行了擴(kuò)展,程序中定義的結(jié)構(gòu)名、聯(lián)合名、枚舉名都是類型名,可以直接用于變量的聲明或定義。即在C++語言中定義變量時,不必在結(jié)構(gòu)名、聯(lián)合名、枚舉名前加上前綴struct、union、enum。此外,在結(jié)構(gòu)和聯(lián)合中還可以定義函數(shù)(其意義在第3章介紹)。例如,有下述類型聲明:

enum color{black,white,red,blue,yellow};
struct student{
   char Name[6];
   int age;
   int getAge(){return age;}
};
union xy{
   int x;
   char y;
   int f(){return x+y;}
};

在C++語言程序中,可以用下面的形式定義相關(guān)類型的變量:

student s1;
xy x1;
color col;

但在C語言中,結(jié)構(gòu)和聯(lián)合中的函數(shù)是不允許的,且必須在相關(guān)變量的定義前面加上對應(yīng)的關(guān)鍵字,形式如下:

struct student s1;
union xy x1;
enum color col;
主站蜘蛛池模板: 黎城县| 祁连县| 邢台县| 台北县| 濮阳市| 石柱| 嘉荫县| 四川省| 台北市| 台安县| 罗山县| 水富县| 平谷区| 阿拉善左旗| 广灵县| 安远县| 集安市| 莱州市| 阳西县| 阳朔县| 永丰县| 交口县| 石狮市| 怀宁县| 朝阳县| 科技| 永靖县| 隆安县| 莱西市| 肥乡县| 永昌县| 井陉县| 宁津县| 西城区| 张掖市| 阜平县| 扶沟县| 洪泽县| 永胜县| 乐东| 临汾市|