c++枚舉類型

枚舉類型(enumeration)是C++中的一種派生數據類型,它是由用戶定義的若干枚舉常量的集合。

基本信息

基本概念

如果一個變數只有幾種可能的值,可以定義為枚舉(enumeration)類型。所謂“枚舉”是指將變數的值一一列舉出來,變數的值只能在列舉出來的值的範圍內。聲明枚舉類型用enum開頭。

例如

enum weekday{sun,mon,tue,wed,thu,fri,sat};

上面聲明了一個枚舉類型weekday,花括弧中sun,mon,…,sat等稱為枚舉元素或枚舉常量。

表示這個類型的變數的值只能是以上7個值之一。它們是用戶自己定義的標識符。

聲明

聲明枚舉類型的一般形式

enum 枚舉類型名 {枚舉常量表列};

在聲明了枚舉類型之後,可以用它來定義變數。

weekday workday,week_end;

這樣,workday和week_end被定義為枚舉類型weekday的變數。

在C語言中,枚舉類型名包括關鍵字enum,以上的定義可以寫為

enum weekday workday,week_end;

根據以上對枚舉類型weekday的聲明,枚舉變數的值只能是sun到sat之一。

例如

workday=mon; week_end=sun; 是正確的。

直接定義枚舉變數

enum{sun,mon,tue,wed,thu,fri,sat} workday,week_end;

這些標識符並不自動地代表什麼含義。

說明:

(1) 對枚舉元素按常量處理,故稱枚舉常量。

(2) 枚舉元素作為常量,它們是有值的,C++編譯按定義時的順序對它們賦值為0,1,2,3,…。也可以在聲明枚舉類型時另行指定枚舉元素的值。

(3) 枚舉值可以用來做判斷比較。

(4) 一個整數不能直接賦給一個枚舉變數。

實例

題目

口袋中有紅、黃、藍、白、黑5種顏色的球若干個。每次從口袋中任意取出3個球,問得到3種不同顏色的球的可能取法,輸出每種排列的情況。

程式

#include

#include //在輸出時要用到setw控制符

using namespace std;

int main( )

{ enum color {red,yellow,blue,white,black};//聲明枚舉類型color

color pri;//定義color類型的變數pri

int i,j,k,n=0,loop;//n是累計不同顏色的組合數

for (i=red;i

相關詞條

相關搜尋

熱門詞條

聯絡我們