枚举就是值它的值为符号常量而不是字面上的值。
enum Jar_Type{CPU,PINT,QUART,GALLON};//这句说明了一个类型,称为Jar_Type。而这种类型的变量可以用下面方式声明
enum Jar_Type milk_jug,gas_can,medicine_bottle;//这时,milk_jug,gas_can,medicine_bottle都为Jar_Type的变量,且它们只能取CPU,PINT,QUART,GALLON这几个值
如果某些变量只使用一个声明,则可以使用下面形式
enum {CPU,PINT,QUART,GALLON} milk_jug,gas_can,medicine_bottle;
枚举类型其实是以整型来存储,这些符号名的实际值都是整型的值(符号名其实是被当作整型的方式存储,这些符号名其实都是整型值),这里为默认的,CPU为0,PINT为1,以此类推。当然,也可以用下面的方式去指定符号名的整型值:
enum Jar_Type{CPU=8,PINT=16,QUART=32,GALLON=128};//如果某个符号未显示指定一个值,那么它就比前面一个大1。