您的位置:首页 > 编程语言

enum枚举类型介绍

2015-02-11 11:40 337 查看
什么是enum枚举类型?

在实际生活中我们经常会遇到一些事物的类型被限定在一定的范围内。比如说人类的性别只可能是男、女、不男不女;每天只可能是星期一到星期日中的一天,等等。

当我们在程序中需要定义一种取值固定是几种类型的类型的时候,我们就可以使用enum枚举类型来定义这个类型,枚举出这种类型所有的取值。

enum的使用格式

enum person{ man, woman, unkown};//定义类型person
enum person xiaoming = man;//创建person类型对象
person xiaohong = woman;//省略enum关键字也可以

enum person{ man, woman, unkown}xiaoming;//定义类型person的同时也可以创建对象


enum中类型的值

在上例中我们定义了person类型,person类型可以是man,可以是woman,当然也可以是什么其他的。我们知道,程序在运行的时候,大部分东西都是以二进制的形式存储在内存中的,计算机可不认识什么是男,什么是女。事实上,enum中的类型都是以整型存储在内存中的,有点像define定义的常量。上例中的man的值是0,woman的值是1,unkown的值是2。因为我们在定义person类型的时候没有指定每个类型具体的数值,所以man、woman和unkown被编译器从0开始默认赋于了0、1、2。当然也可以在定义的时候指定每个类型的数值(必须是整型)。

enum person{ man = 1, woman = 20, unkown = 300};


enum的赋值操作

当我们创建刚才定义的enum的类型的变量的时候,注意,虽然enum中的类型是以整型存储的,事实上,直接将一个整数赋给一个enum变量是不被允许的,正确的做法是将enum类型定义时定义的几种类型赋值。

enum person{ man = 1, woman = 2, unkown = 3};
person xiaoming = 1;//错误
person xiaoming = man;//正确


如果创建对象的时候没有初始化,那么该变量将被赋为0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  编程语言