广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >枚举类型的定义和应用总结
  • 331
分享到

枚举类型的定义和应用总结

枚举类型 2022-11-15 23:11:47 331人浏览 薄情痞子
摘要

定义:如果一种变量只有几种可能的值,可以定义为枚举类型。所谓“枚举类型”是将变量的值一一列举出来,变量的值只能在列举出来的值的范围内。 声明:声明枚举类型用enum开头,例如:enu

定义:
如果一种变量只有几种可能的值,可以定义为枚举类型。所谓“枚举类型”是将变量的值一一列举出来,变量的值只能在列举出来的值的范围内。

声明:
声明枚举类型用enum开头,例如:


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

上面声明了一个枚举类型weekday,花括号中的sun,mon,。。。。sat等称为枚举元素或枚举常量。

这些枚举常量,不会因为我们写了sun就自动代表着“星期天”,它只是一个符号,究竟用来代表什么含义,完全却决于程序员自己对它们的处理。


表示这个类型的变量的值只能是以上7个值之一,他们是用户自己定义的标识符。

在声明了枚举类型之后,就可以用它开定义变量。如


weekday workday,week_end;

这样,workday和week_end被定义为枚举类型weekday的变量。

说明:
(1)对枚举元素按照常量处理,故称为枚举常量。它们不是变量,不能对他们赋值。

(2)枚举元素作为常量,它们是有值的,c++编译按定义时的顺序对它们赋值为0,1,2,3,......


#include<iOStream>
using namespace std;
int main(){
 enum weekday{sun,mon,tue,wed,thu,fri,sat};
 weekday one;
 one=sun;
 cout<<one;
 cout<<endl;
}



我们也卡一在声明枚举类型时,另行指定枚举元素的值,如

#include<iostream>
using namespace std;
int main(){
 enum weekday{sun=7,mon=1,tue,wed,thu,fri,sat};
 weekday one,two;
 one=sun;
 two=wed;
 cout<<one<<endl;
 cout<<two<<endl;
 cout<<endl;
}


指定sun为7,mon为1,以后按顺序加1,sat为6。

(3)枚举值可以用来做比较。

枚举值的比较规则是按其在声明枚举类型时的顺序号比较。如果定义时未人为指定,则第一个枚举元素的值认作0.


#include<iostream>
using namespace std;
int main(){
 enum weekday{sun=7,mon=1,tue,wed,thu,fri,sat};
 weekday one,two;
 one=sun;
 two=wed;
        cout<<(sun>wed?sun:wed);
 cout<<endl;
}



(4)一个整数不能直接赋给一个枚举变量,应先进行强制类型转换才能赋值。

#include<iostream>
using namespace std;
int main(){
 enum weekday{sun,mon,tue,wed,thu,fri,sat};
 weekday one;
 one=weekday(7);
 cout<<one;
 cout<<endl;
}



以上的语句是将序号为2的枚举元素赋给one。相当于

 one=sun;

一个例子:
口袋中有红、黄、蓝、白、黑5种颜色的球若干。每次从口袋中任意取出3个球,问得到3中不同颜色的球的可能取法,输出每种排列的情况。

分析:球的颜色只有5种,每一个球的颜色只能是这5种之一,因此可以用枚举类型变量来处理。



#include<iostream>
using namespace std;
int main(){
   enum color{red,yellow,blue,white,black};
   color pri;
   int i,j,k,n=0,loop;
   for(i=red;i<=black;i++){
    for(j=red;j<=black;j++)
     if(i!=j){
      for(k=red;k<=black;k++){
       if(k!=i&&k!=j){
        n++;//使n累加,统计可能的抽取情况
        cout<<n<<"\t";
        for(loop=0;loop<3;loop++){//通过循环,输出该次i,j,k所对应的颜色
         switch(loop){
          case 0:pri=color(i);break;
          case 1:pri=color(j);break;
          case 2:pri=color(k);break;
         }
         switch(pri){
          case red:   cout<<"red\t";break;
          case yellow:cout<<"yellow\t";break;
          case blue:  cout<<"blue\t";break;
          case white: cout<<"white\t";break;
          case black: cout<<"black\t";break;
         }
        }
        cout<<endl;
       }
      }
    }
   }
   cout<<"total:"<<n<<endl;
}

--结束END--

本文标题: 枚举类型的定义和应用总结

本文链接: https://www.lsjlt.com/news/172860.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 枚举类型的定义和应用总结
    定义:如果一种变量只有几种可能的值,可以定义为枚举类型。所谓“枚举类型”是将变量的值一一列举出来,变量的值只能在列举出来的值的范围内。 声明:声明枚举类型用enum开头,例如:复制代...
    99+
    2022-11-15
    枚举类型
  • C++的枚举类型怎么定义
    这篇文章主要介绍了C++的枚举类型怎么定义的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C++的枚举类型怎么定义文章都会有所收获,下面我们一起来看看吧。C++枚举类型enum表示枚举,通常用于定义个新类型的字符...
    99+
    2023-06-27
  • java中枚举类型定义和重写枚举的示例分析
    这篇文章将为大家详细讲解有关java中枚举类型定义和重写枚举的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。什么是枚举类型枚举类型(Enumerated Type) 很早就出现在编程语言中,它被用...
    99+
    2023-05-30
    java
  • python枚举类型定义与使用讲解
    目录1.定义2.使用3.枚举构造器1.定义 在某些情况下,一个类的对象是有限且固定的,比如季节类,它只有 4 个对象;再比如行星类,目前只有 8 个对象。这种实例有限且固定的类,在 ...
    99+
    2022-11-11
  • C#中的枚举类型怎么定义使用
    这篇文章主要介绍“C#中的枚举类型怎么定义使用”,在日常操作中,相信很多人在C#中的枚举类型怎么定义使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C#中的枚举类型怎么定义使用”的疑惑有所帮助!接下来,请跟...
    99+
    2023-07-02
  • C#枚举类型的应用
    这篇文章主要讲解了“C#枚举类型的应用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#枚举类型的应用”吧!C#枚举类型应用是怎么样的呢?首先我们来看看几个问题:◆C#枚举类型与基础类型的转...
    99+
    2023-06-17
  • Python枚举类定义和使用方法
    前言: 一些具有特殊含义的类,其实例化对象的个数往往是固定的,比如用一个类表示月份,则该类的实例对象最多有 12 个;再比如用一个类表示季节,则该类的实例化对象最多有 4 个。 针对...
    99+
    2022-11-11
  • Python枚举类怎么定义和使用
    本篇内容主要讲解“Python枚举类怎么定义和使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python枚举类怎么定义和使用”吧!一些具有特殊含义的类,其实例化对象的个数往往是固定的,比如用...
    99+
    2023-06-30
  • C语言自定义数据类型的结构体、枚举和联合详解
    结构体基础知识 首先结构体的出现是因为我们使用C语言的基本类型无法满足我们的需求,比如我们要描述一本书,就需要书名,作者,价格,出版社等等一系列的属性,无疑C语言的基本数据类型无法解...
    99+
    2022-11-12
  • C语言中的自定义类型之结构体与枚举和联合详解
    目录1.结构体1.1结构的基础知识1.2结构的声明1.3特殊的声明1.4结构的自引用1.5结构体变量的定义和初始化1.6结构体内存对齐1.7修改默认对齐数1.8结构体传参2.位段2....
    99+
    2022-11-13
  • C语言自定义类型详解(结构体、枚举、联合体和位段)
    目录前言一、结构体1、结构体类型的声明2、结构体的自引用3、结构体变量的定义和初始化4、结构体内存对齐5、结构体传参二、位段1、位段的定义 2、位段的内存分配3、位段的应用...
    99+
    2022-11-12
  • C#枚举类型的概念及应用
    这篇文章主要讲解了“C#枚举类型的概念及应用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#枚举类型的概念及应用”吧!C#枚举类型(也称为枚举)为定义一组可以赋给变量的命名整数常量提供了一...
    99+
    2023-06-17
  • MySQL枚举与集合类型的应用
    本文主要给大家介绍MySQL枚举与集合类型的应用,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下MySQL枚举与集合类型的应用吧。1. 背景  *&n...
    99+
    2022-10-18
  • C# 枚举类型的声明和使用
    目录前言相关介绍一、枚举声明二、声明位置三、枚举使用总结前言 学习记录下枚举的声明和使用,枚举可用来规范开发 文章中代码的项目名为Project1,C#类名为Class1 相关介...
    99+
    2022-11-12
  • C语言枚举型变量怎么定义和使用
    在C语言中,枚举类型(enum type)是一种自定义的数据类型,用于定义一组有限的取值,这些取值称为枚举常量(enum const...
    99+
    2023-10-10
    C语言
  • C语言自定义类型超详细梳理之结构体枚举联合体
    目录一、什么是结构体1.结构体实现2.匿名结构体类型3.结构体自引用4.结构体的内存对齐5.结构体位段 二、什么是枚举1.枚举类型的定义2.枚举的优点三、联合(共用体)1.什么是联合...
    99+
    2022-11-13
  • C语言深入探究自定义类型之结构体与枚举及联合
    目录1.结构体1.1结构体类型的声明1.2结构的自引用1.3结构体变量的定义和初始化1.4结构体内存对齐1.5结构体传参1.6结构体实现位段(位段的填充&可移植性)2.枚举2...
    99+
    2022-11-13
  • TypeScript中枚举类型的理解与应用场景
    目录一、是什么二、使用数字枚举字符串枚举异构枚举本质三、应用场景总结一、是什么 枚举是一个被命名的整型常数的集合,用于声明一组命名的常数,当一个变量有几种可能的取值时,可以将它定义为...
    99+
    2022-11-12
  • C# 枚举类型的声明和使用方法
    本篇内容主要讲解“C# 枚举类型的声明和使用方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C# 枚举类型的声明和使用方法”吧!目录前言相关介绍一、枚举声明二、声明位置三、枚举使用前言学习记录...
    99+
    2023-06-20
  • C语言关于自定义数据类型之枚举和联合体详解
    目录前言枚举枚举类型的定义枚举类型的优点枚举类型的使用枚举中需要注意的点联合体联合体类型的定义联合体的特点联合体的使用联合体存在内存对齐结语前言 在C语言的自定义数据类型中,除了我们...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作