博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IOS基本数据类型之枚举
阅读量:7249 次
发布时间:2019-06-29

本文共 1384 字,大约阅读时间需要 4 分钟。

  枚举是C语言中的一种基本数据类型,通过枚举可以声明一组常数,来代表不同的含义,它实际上就是一组整型常量的集合。

  枚举是非常常用的一种类型,在现实生活中也很常见。比如有四个季节,在不同的季节需要显示不同的配色,在代码中可以用1到4四个数字表示不同的季节,但是这样的话,程序的可读性很差,因为你很难区分不同数字代表哪个季节,这个时候就可以使用一个季节的枚举变量来表示春、夏、秋、冬,这样当看到枚举值的第一时刻就能知道对应的季节,但是实际上四个枚举值对应的还是4个整型数字。

枚举类型的定义

enum 枚举名 {枚举元素1, 枚举元素2, 枚举元素3… };

代码

enum Season {spring, summer, autumn, winter};

枚举变量的定义

  按照格式定义好枚举类型后,就可以使用定义好的枚举类型声明枚举变量。下面就以四季为例子讲解一下枚举变量定义的几种方式

  1、先定义枚举类型,再定义枚举变量

代码

enum Season {spring, summer, autumn, winter};enum Season s;

  2、定义枚举类型的同时定义枚举变量

代码

enum Season {spring, summer, autumn, winter} s;

  3、省略枚举名称,直接定义枚举变量

代码

enum {spring, summer, autumn, winter} s;

4、给枚举类型重命名,然后定义枚举变量

代码

typedef enum _season {spring, summer, autumn, winter} Season;     Season s;

枚举元素对应的值

1、枚举元素的值取决于定义枚举类型时的先后顺序,默认情况下,第一个枚举元素的值为0,第二个为1,后面的依次加1

代码

enum Season {spring, summer, autumn, winter} ;

  例子中的spring的值为0,summer为1,autuum为2,winter为3

  2.  枚举元素的值也可以在定义枚举类型的时候进行改变,给某个枚举元素指定一个值,其枚举元素后面的枚举值依次加1

  代码

enum Season {spring, summer = 3, autumn, winter} ;

  例子中的spring的值为0,summer为3,autuum为4,winter为5

枚举元素对应的值

  定义好枚举类型后,就可以在类中使用枚举类型的实例变量或者在方法中使用枚举类型的参数。给枚举变量赋值可以使用枚举常量,也可以使用整型值,两者效果一样。

代码

enum Season {spring, summer, autumn, winter} s;   Season s1 =  spring; //等价于 s1=0Season s2 = 2;  //等价于s2= autumn

 

作者:杰瑞教育
出处:
 
版权声明:本文版权归
技有限公司和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
技术咨询:
 

转载于:https://www.cnblogs.com/jerehedu/p/4885918.html

你可能感兴趣的文章
[JS相关的记录01] 那什么来面对你,面向对象编程(__proto__,prototype,constructor以及原型链)...
查看>>
夏日葵电商:搭建一个商城系统,N+功能方案揭秘!
查看>>
Akka系列(一):Akka简介与Actor模型
查看>>
yii2获得从数据库获得数据的方法并处理
查看>>
Android开发百度地图(一)之初体验
查看>>
微服务指南走北(四):你不愿意做微服务架构的十个理由
查看>>
CSS代码重构与优化之路
查看>>
使用 sigprocmask 和 sigpending 在程序正文中捕获和处理信号
查看>>
Bodymovin插件的使用
查看>>
详细深入分析 Java ClassLoader 工作机制
查看>>
关于设计模式
查看>>
对一个“老”架构的重新思考
查看>>
DoubanFMPlayer, A mimic of Douban.fm player
查看>>
埃森哲、亚马逊和万事达卡抱团推出的区块链项目有何神通?
查看>>
2019年自动驾驶5大趋势预测:第一台Level 5 无人车问世
查看>>
后APP时代的破局之路 :阿里技术“三大容器五大方案”亮相,百川开放全面升级...
查看>>
工欲善其事-必先利其器之终端
查看>>
64位的Mac OS X也有Windows.Forms了
查看>>
立下“去O”Flag的AWS,悄悄修炼了哪些内功?
查看>>
Better Software East/DevOps East/Agile Dev East 2016大会上的教程介绍
查看>>