a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 55|回复: 0

[C++] C/C++中枚举类型(enum)的入门教程

[复制链接]
发表于 2012-7-31 21:56:58 | 显示全部楼层 |阅读模式
如果一个变量你需要几种可能存在的值,那么就可以被定义成为枚举类型。之所以叫枚举就是说将变量或者叫对象可能存在的情况也可以说是可能的值一一例举出来。 3 P1 j; c# D6 N- ]2 ~

! R' P3 S# |; A! F* |举个例子来说明一吧,为了让大家更明白一点,比如一个铅笔合中有一支笔,但在没有打开之前你并不知道它是什么笔,可能是铅笔也可能是钢笔,这里有两种可能,那么你就可以定义一个枚举类型来表示它!
! A5 O& ^. x( X/ W9 n& @' ?) S  d4 s5 U2 }$ p
enum box{pencil,pen};//这里你就定义了一个枚举类型的变量叫box,这个枚举变量内含有两个元素也称枚举元素在这里是pencil和pen,分别表示铅笔和钢笔。
; ~6 B8 D( h) o% t/ p: M) d
& B) _! i% e$ @" x* Y# w
8 |& U2 A" \' w0 J7 b+ a在这里要说一下,如果你想定义两个具有同样特性枚举类型的变量那么你可以用如下的两种方式进行定义! + l1 k! q# @( a) V
% j6 h& f, y4 T4 x& V' T
enum box{pencil,pen};
& @, h8 G* A$ a) L  S8 G! S% S$ d$ E% w. F- j' o- [+ n9 N
enum box box2;//或者简写成box box2;
0 ]9 M- i* G* R6 L' V  t" `- ?
( ~3 B/ Y6 P  b. C0 X9 U( `& f: X
8 U1 {7 |/ D& K% B4 ?% K6 ]. p+ N再有一种就是在声明的时候同时定义。
% N% Q+ b% @$ [- z) c6 Y- h3 W$ m, h1 `7 U+ |: J
enum {pencil,pen}box,box2; //在声明的同时进行定义! & d. w2 h* B5 _6 _+ D. X2 i

) j3 y2 D2 r; Z4 E% w2 w0 X7 _0 v& B, p# T# C
枚举变量中的枚举元素系统是按照常量来处理的,故叫枚举常量,他们是不能进行普通的算术赋值的,(pencil=1;)这样的写发是错误的,但是你可以在声明的时候进行赋值操作!
( u# g6 Z% ~( B' M/ @$ N. G: }# f
enum box{pencil=1,pen=2}; 1 Y, C& }4 e$ i
) s2 e- K! Q2 T

- q6 [  F7 ]. M9 y: {- W: z但是这里要特别注意的一点是,如果你不进行元素赋值操作那么元素将会被系统自动从0开始自动递增的进行赋值操作,说到自动赋值,如果你只定义了第一个那么系统将对下一个元素进行前一个元素的值加1操作,例如
$ e% t7 l0 n5 ^
& {& n9 r8 a2 y* U" G( S& `& Menum box{pencil=3,pen};//这里pen就是4系统将自动进行pen=4的定义赋值操作!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-18 15:18 , Processed in 0.376664 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表