zoukankan      html  css  js  c++  java
  • 又爱又恨系列之枚举enum

    其实枚举挺简单的,只不过以前没好好学,所以不知道这个东西,恩,现在梳理一下

    整体而言,首先枚举是一个数据类型,这个数据类型和结构体有点像

    可以分为三个层次

    1.枚举数据类型定义

      第一种:enum 枚举名 {

        枚举元素 1,

        枚举元素 2,

        ......,

        ......

     }

    eg:

      enum week{Sun,Mon,Tue,Wed,Thu,Fri,Sat};

    2.枚举变量的定义

      主要有两种方式

        方式一:根据1中定义的数据类型定义枚举变量

        enum week Workday,Holiday;

        方式二:在定义枚举数据类型的同时定义变量,这种方式有两种方法

            方法一:不省略枚举名

              enum week{Sun,Mon,Tue,Wed,Thu,Fri,Sat}Workday,Holiday;

            方法二:省略枚举名

              enum {Sun,Sun,Mon,Tue,Wed,Thu,Fri,Sat}Workday,Hoiday;

              注:方法二不能再另外定义变量

     

    3.枚举变量的引用

        常规的引用是:

        Workday=Mon;

        Hoiday=Sun;

        但是另外要注意几点:

          1.定义数据类型中的枚举元素是常量!!禁止对他进行赋值等操作,如 :Mon=1;Sun=Mon;都不

          2.枚举元素在定义时就已经由系统自动给了一个整数值,默认第一个枚举元素的值为0,其后的每个枚举元素顺序加1,

            如果认为赋值,则已赋值的按照人为赋值,没有人为赋值的在前一个元素的基础上加1

          例如:enum week{Sun=4,Mon=2,Tue,Wed,Thu,Fri,Sat}

          则sun=4 mon=2 Tue=3,Wed=3,Thu=4,Fri=5,Sat=6;

          3.枚举常量和枚举变量在输出时都是一个整数,因此格式控制说明符应该为%d

          4.枚举值可以进行比较,比较时,以他们的整数值比较

    恩,OK,就这些了,希望又爱又恨的东西全部变成爱

    亲爱的听众朋友我是你的代班DJ
  • 相关阅读:
    全面认识golang string
    解决Manjaro Linux无法安装搜狗拼音
    解决QTableWidget不显示数据的问题
    在go modules中使用replace替换无法直接获取的package(golang.org/x/...)
    在go modules里使用go get进行包管理
    golang包管理解决之道——go modules初探
    反爬虫——使用chrome headless时一些需要注意的细节
    golang使用chrome headless获取网页内容
    <强化学习>开门帖
    <老古董>1992年之后的非线性支持向量机解法
  • 原文地址:https://www.cnblogs.com/YTYMblog/p/5380302.html
Copyright © 2011-2022 走看看