一、枚举:继承关系System.Object-->system.ValueType--->System.Enum(值类型)

,可对其进行格式化输出。
二、判断一个枚举是否合法:Enum.IsDefined;枚举类型转换:Enum.Parse;可以把数

值转换为枚举类型。

三、位标记:定义一个枚举类型,在枚举类型上加上[Flags]属性。
如:
        [Flags]
enum Actions
{
 Read =0X0001,
 Write=0X0002,
 Delete=0X0004,
 Query=0X0008,
 Sync=0X00010,
}
调用
Actions actions=Actions.Read|Actions.Write;//值是:0x0003
Console.WriteLine(actions.ToString());//输出"Read、Wirte"

他们的值是2的N次方,如上可以用^、|、&等符号进行运算实现从数据组合。如果我

们直接给一个值,系统也会为自动进行位运算,返回当前值是由哪几个已经定义的位

数据组合而成的。就像上面一样,我们不用再定义一个可读写的枚举。

实例:Actions a=(Actions) Enum.Parse(typeof(Actions),“28”,false)
console.writeline(a.tostring())//输出 Delete、Query、Sync
当,Parse的方法被调用时,他们同样会检查枚举类型上是否应用了[Flags]定制特性

,如果有Parse将会吧字符串拆分成单个的符合,然后查询每一个符合的值,并对相

应的值执行位或(只允许位操作,禁止算术操作 加、减)操作,最后得到一个枚举

类型的实例。

转载于:https://www.cnblogs.com/gowhy/archive/2011/04/12/2013393.html

枚举、位操作 CLR学习第十二课相关推荐

  1. 《SQL必知必会》学习笔记——第十二课 连结表

    第十二课 连结表 一.创建连结 SELECT inf.id, age, rank FROM inf,score WHERE inf.id = score.id; 注意 WHERE inf.id = s ...

  2. Unity C# 网络学习(十二)——Protobuf生成协议

    Unity C# 网络学习(十二)--Protobuf生成协议 一.安装 去Protobuf官网下载对应操作系统的protoc,用于将.proto文件生成对应语言的协议语言文件 由于我使用的是C#所以 ...

  3. Python-opencv学习第二十九课:高斯双边模糊

    Python-opencv学习第二十九课:高斯双边模糊 文章目录 Python-opencv学习第二十九课:高斯双边模糊 一.学习部分 二.代码部分 1.引入库 2.读入数据 3.完整代码 三.运行结 ...

  4. OpenGL教程翻译 第二十二课 使用Assimp加载模型

    第二十二课 使用Assimp加载模型 原文地址:http://ogldev.atspace.co.uk/(源码请从原文主页下载) 背景 到现在为止我们都在使用手动生成的模型.正如你所想的,指明每个顶点 ...

  5. 【C++探索之旅】第一部分第十二课:指针一出,谁与争锋

    内容简介 1.第一部分第十二课:指针一出,谁与争锋 2.第一部分第十三课预告:第一部分小测验 指针一出,谁与争锋 上一课<[C++探索之旅]第一部分第十一课:小练习,猜单词>中,我们用一个 ...

  6. 第十二课 Java基础篇——面向对象进阶(一)

    一.Static static表示静态,是Java中的一个修饰符,可以修饰成员方法,成员变量 静态变量是随着类的加载而加载的,优先于对象出现的 练习1.定义数组工具类 需求:在实际开发中,经常会遇到一 ...

  7. C++语言学习(十二)——C++语言常见函数调用约定

    C++语言学习(十二)--C++语言常见函数调用约定 一.C++语言函数调用约定简介 C /C++开发中,程序编译没有问题,但链接的时候报告函数不存在,或程序编译和链接都没有错误,但只要调用库中的函数 ...

  8. Kali Linux Web 渗透测试— 第十二课-websploit

    Kali Linux Web 渗透测试- 第十二课-websploit 文/玄魂 目录 Kali Linux Web 渗透测试- 第十二课-websploit..................... ...

  9. Tensorflow深度学习之十二:基础图像处理之二

    Tensorflow深度学习之十二:基础图像处理之二 from:https://blog.csdn.net/davincil/article/details/76598474   首先放出原始图像: ...

最新文章

  1. 你玩的音游可能真是AI生成的,Love Live!工作室发了篇论文,用AI节省50%作谱时间...
  2. 【数据库】关系型数据库开发
  3. 区块链BaaS云服务(21)腾讯CCGP”安全沙箱“
  4. hdfs oiv命令查看FsImage镜像文件内容
  5. 缓存使用-4、Redis 持久化机制
  6. mysql中having的例子_mysqlgroupby/having/distinct查询使用例子_MySQL
  7. python脚本之家 包的创建和调用_python基础之包的导入和__init__.py的介绍
  8. php语法中可以输出调试信息,怎么优雅的输出PHP调试信息
  9. 16 寸MacBook Pro比14 寸风扇更强大,更耐用
  10. 九款即时通讯软件大盘点
  11. 几款免费PDF合并成一个PDF的软件推荐,快收藏起来吧
  12. 数据结构题及c语言版 答案,数据结构(C语言版)1800道题及答案[完整版]
  13. 教你用go freetype根据用户昵称生成头像
  14. GDI 总结三: CImage类使用
  15. SSM(Spring+SpringMVC+MyBatis)框架入门
  16. html如何防止内部撑开,父div没有被撑开,该怎么解决?_html/css_WEB-ITnose
  17. Linux:进程间通信(创建匿名管道,父子进程间通信,兄弟进程间通信)
  18. Macbook 开机后黑屏,电池满电却瞬间没电问题
  19. 解决百度网盘限速超简单
  20. 阿里妈妈免费网站Flash动画广告牌制作

热门文章

  1. 官方文档太辣鸡?TensorFlow 2.0开源工具书,30天「无痛」上手
  2. 更深更宽的孪生网络,有效提升目标跟踪精度,代码开源
  3. Python 3.8.0 发布!
  4. 豆瓣评分 9.4 的编程巨著!《算法》
  5. PyTorch + NumPy这么做会降低模型准确率?
  6. AI自动评审了下Transformer论文
  7. CMU | 深度学习模型中集成优化、约束和控制
  8. 学习l1图做图像分析
  9. c语言贪吃蛇咬到尾巴,【图片】C语言小游戏~贪吃蛇【c语言吧】_百度贴吧
  10. mysql 为了检索从某一个偏移量到记录集的结束所有的记录行_mysql limit 效率分析...