C++11有作用域的enum举例分析

技术C++11有作用域的enum举例分析本篇内容介绍了“C++11有作用域的enum举例分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅

本文介绍了“C 11中带作用域的枚举分析”的相关知识。很多人在实际案例的操作中会遇到这样的困难。接下来,让边肖带领大家学习如何应对这些情况!希望大家认真阅读,学点东西!

枚举类型的困惑

从C语言过渡到C语言后,枚举被广泛用作减少程序错误的手段之一。但这也带来了一个问题:枚举值的重复。假设我们有以下三原色的定义:

C++11有作用域的enum举例分析

代码还需要定义三种原色:

C++11有作用域的enum举例分析

两者同时定义后,会出现一个问题:连红蓝两个值都重复定义。

传统的解决方法

当然,修改枚举值的名称是一种方法,但它是相对低级的,所以我们不讨论它。的一般做法是将枚举类型的定义放入不同的范围(类或命名空间)中。示例:

C++11有作用域的enum举例分析

这样,两个枚举定义就不会冲突。您可以通过以下方式使用这两种枚举类型:

C++11有作用域的enum举例分析

略显累赘,但足够有效。

C++11的解决方式

C 11引入了范围有限的枚举类型的概念。其用法如下:

C++11有作用域的enum举例分析

与前面的方法相比,我们可以发现在标准枚举类型定义格式中只添加了class关键字。其效果是同时为枚举值定义一个与枚举类型同名的范围。定义限定范围的枚举类型后,可以通过以下方式使用它:

C++11有作用域的enum举例分析

这里介绍一下“C 11中带作用域的枚举”的内容。感谢阅读。如果你想了解更多的行业,可以关注网站。边肖将为您输出更多高质量的实用文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/116975.html

(0)

相关推荐

  • 羸弱和赢弱区别,踟蹰和踌躇有什么区别

    技术羸弱和赢弱区别,踟蹰和踌躇有什么区别踟蹰和踌躇的区别为:性质不同zhidao羸弱和赢弱区别、侧重点不同、出处不同 一、性质不同
    1、踟蹰:迟疑,要走不走的样子。
    2、踌躇:停留,徘徊不前。
    二、侧重点回不同

    生活 2021年10月27日
  • Git的常用操作命令有哪些

    技术Git的常用操作命令有哪些这篇文章主要为大家展示了“Git的常用操作命令有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Git的常用操作命令有哪些”这篇文章吧。

    攻略 2021年10月25日
  • wcf服务接口定义的前面需要注解啥(wcf序列化是在客户端还是服务端)

    技术WCF服务元数据结构模式是怎样的这篇文章主要介绍“WCF服务元数据结构模式是怎样的”,在日常操作中,相信很多人在WCF服务元数据结构模式是怎样的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家

    攻略 2021年12月14日
  • 哪些水果含维生素c,含有维生素C的食物有什么

    技术哪些水果含维生素c,含有维生素C的食物有什么含维生素C的食物很多哪些水果含维生素c,好多水果蔬菜都有。水果比如苹果,梨,荔枝,橘子,葡萄等,蔬菜比如辣椒,白菜,茄子,番茄。好多好多,只要丰富点,换着吃,每天摄入量足够

    生活 2021年10月27日
  • 拼多多可以用花呗吗,京东淘宝拼多多分别用什么付款

    技术拼多多可以用花呗吗,京东淘宝拼多多分别用什么付款京东是京东自己的白条或者网银还有微信拼多多可以用花呗吗,淘宝可以支付宝跟网银,
    拼多多可以微信或者支付宝还有网银。
    无论是淘宝还是京东,就目前来看,都属于两个做得非常大

    生活 2021年10月31日
  • 嵌套_ table _ set _ refhint在数据库中有什么用?

    技术数据库中NESTED_TABLE_SET_REFS hint有什么用这篇文章将为大家详细讲解有关数据库中NESTED_TABLE_SET_REFS hint有什么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家

    攻略 2021年12月13日