(1)結構體和枚舉是C++中的構造數據類型。構造數據類型是由基本數據類型按照必定的規則組合c++
在一塊兒而構成的數據類型。枚舉在C/C++中,是一個被命名的整型常數的集合。數組
結構體(struct)是由一系列具備相同類型或不一樣類型的數據構成的數據集合,也叫結構。是一個能夠包含不一樣數據類型的一個結構,它是一種能夠本身定義的數據類型。ide
(2)結構體(struct)的使用函數
struct test
{
float a;
int b;
};
上面的代碼就定義了一個名爲test的結構體,它的數據類型就是test,它包含兩個成員a和b,成員a的數據類型爲浮點型,成員b的數據類型爲整型。 因爲結構體自己就是自定義的數據類型,定義結構體變量的方法和定義普通變量的方法同樣。 只有當你用你定義的結構體類型定義結構體變量的時候計算機纔會分配內存。ui
test pn1;
這樣就定義了一test結構體數據類型的結構體變量pn1spa
結構體成員的訪問經過點操做符進行:指針
(3)枚舉在C/C++中,是一個被命名的整型常數的集合, 枚舉在平常生活中很常見。orm
enum CMD內存
{input
quit = 0, add = 1, search, sort
};
定義枚舉變量:
CMD cmd;
對枚舉變量賦值:
int input = 0;
cmd = (CMD)input;
也能夠這樣賦值:
cmd = quit;
要訪問枚舉變量的值,能夠直接使用。
(4)結構體和類的區別,在c++中,結構體沒有成員函數,就是隻有屬性,沒有功能;而類具備成員函數和成員變量。還有一點就是默認訪問屬性不同,在結構體中,默認訪問屬性是公有的(public),而類若是不聲明則默認爲私有的(private)。
(5)數組是單一數據類型的數據集合,它自己不是數據類型(而結構體是),數組名稱是常量指針,因此不能夠作爲左值進行運算,因此數組之間就不能經過數組名稱相互複製了,即便數據類型和數組大小徹底相同。