当前位置: 首页 > news >正文

做家纺的主要国际网站推广普通话手抄报文字

做家纺的主要国际网站,推广普通话手抄报文字,开源app开发工具,石家庄做网络推广的网站enum枚举 C继承C的枚举用法 (1)典型枚举类型定义,枚举变量定义和使用 (2)枚举类型中的枚举值常量不能和其他外部常量名称冲突: 举例1宏定义,举例2另一个枚举 // 定义一个名为Color的枚举类型 enum Color {RED, // 红色,默认值…

enum枚举

C++继承C的枚举用法
(1)典型枚举类型定义,枚举变量定义和使用
(2)枚举类型中的枚举值常量不能和其他外部常量名称冲突:
举例1宏定义,举例2另一个枚举

   // 定义一个名为Color的枚举类型
enum Color {RED,    // 红色,默认值为0GREEN,  // 绿色,默认值为1BLUE    // 蓝色,默认值为2
};// 声明一个枚举变量并赋值Color myColor = RED;// 使用switch语句来处理不同的枚举值switch (myColor) {case RED:cout << "The color is red." << endl;break;case GREEN:cout << "The color is green." << endl;break;case BLUE:cout << "The color is blue." << endl;break;default:cout << "Unknown color." << endl;break;}// 输出枚举的整数值cout << "The integer value of RED is: " << RED << endl;cout << "The integer value of GREEN is: " << GREEN << endl;cout << "The integer value of BLUE is: " << BLUE << endl;

C++11中扩展的枚举
(1)enum class enumType:valueType{one=xx, two, three};
(2)两种简写
(3)解决2个枚举中的重名问题,但是宏定义仍然不能重名

强类型枚举(Scoped Enumerations)
强类型枚举使用enum class关键字定义,它们是强类型的,不能隐式转换为整数,并且枚举成员必须使用枚举类型名进行限定。
简化写法1:

// 定义一个强类型枚举Color
enum class Color {RED,GREEN,BLUE
};

简化写法2:

enum Color {RED,GREEN,BLUE
};

完全写法:

// 定义一个基于整型的枚举Color
enum class Color1 : uint8_t {RED,GREEN,BLUE
};int test() {// 声明一个基于整型的枚举变量并赋值Color1 myColor1 = Color1::RED;// 使用switch语句来处理不同的枚举值switch (myColor1) {case Color1::RED:cout << "The Color1 is red." << endl;break;case Color1::GREEN:cout << "The Color1 is green." << endl;break;case Color1::BLUE:cout << "The Color1 is blue." << endl;break;default:cout << "Unknown Color1." << endl;break;}// 强类型枚举不能直接转换为整数,需要显式转换cout << "The integer value of Color1::RED is: " << static_cast<int>(Color1::RED) << endl;cout << "The integer value of Color1::GREEN is: " << static_cast<int>(Color1::GREEN) << endl;cout << "The integer value of Color1::BLUE is: " << static_cast<int>(Color1::BLUE) << endl;return 0;
}

static_cast 是 C++ 中的一种类型转换操作符,用于将一个表达式的值从一种类型强制转换为另一种类型。在这种情况下,它通常用于将某个对象或表达式从一个基类转换为它的派生类,或者是将一个非特定类型的值转换为整型(int)。static_cast 保证了转换的准确性和效率,因为它不需要运行时的动态检查,而是在编译时完成。

关于枚举的3个小细节
(1)枚举类型和值类型的互相转换,枚举类型是否可以++
(2)枚举类型的前置声明
(3)枚举类型超出范围访问是否会编译时或运行时报错

/ 前置声明
enum class Color1 ; // 声明 Color1 类型,但不提供具体定义

共用体union

C语言中union回顾
(1)union翻译成共用体更合适,而不是联合、联合体
(2)union中所有成员是多选一的关系,这是union和struct的最大差别
(3)union的典型用法是测试大小端,面试笔试常考,必须掌握

C++中union和C中不同
(1)C++中union类型定义后使用时可以省去union(和上节enum时一样)
(2)C++中union里成员除了普通的,还可以是对象,但是对象不能包含自定义构造函数、析构函数,简单说就是不能太复杂
(3)C++中经常用到匿名union,一般是内置在class内部做成员变量
匿名union:

union 
{char *p1;int *p2;
}m1;				// 直接定义了union变量m1
#include <iostream>
using namespace std;// 定义一个联合类型
union Data {int i;float f;char str[20];
};int main() {// 声明一个变量Data data;// 存储整数data.i = 10;cout << "data.i = " << data.i << endl;// 存储浮点数data.f = 220.5;cout << "data.f = " << data.f << endl;// 存储字符串strcpy(data.str, "Hello, World!");cout << "data.str = " << data.str << endl;// 注意,由于union的所有成员共享同一块内存,// 存储一个成员的值会覆盖之前存储的其他成员的值cout << "After storing str, data.i = " << data.i << endl;cout << "After storing str, data.f = " << data.f << endl;return 0;
}

在这里插入图片描述

总结

知道枚举的使用方法,强类型枚举(Scoped Enumerations)
知道共用体union的使用方法

学习记录,侵权联系删除。
来源:朱老师物联网大课堂

http://www.dinnco.com/news/26120.html

相关文章:

  • 短租网网站开发 项目背景青岛网站关键词排名优化
  • 软件网站怎么做的如何制作一个属于自己的网站
  • 一个专门做澳洲直邮的网站2345网址导航 中国最
  • 设计网站推荐素材网站百度网站登录入口
  • 个人做网站怎么赚钱英雄联盟更新公告最新
  • 网站网络营销方案aso关键词覆盖优化
  • 网站测试的必要性为什么seo工资不高
  • 只做彩票网站犯法吗域名注册平台
  • wordpress微信群导航主题广州优化网站排名
  • 百度云网盘网页版登录北京seo网站推广
  • 政府网站建设考察报告百度关键词收费标准
  • 工作室网站源码以品牌推广为目的的广告网络平台
  • 网站的报价怎么做下拉词排名
  • 网站编程语言搜索引擎优化什么意思
  • 做老电影网站侵权吗百度 营销推广是做什么的
  • 宝路华手表官方网站网络营销机构官方网站
  • 铜仁网站优化北京做网络优化的公司
  • 自助建站还是人工建站好美容美发培训职业学校
  • 做网站一定需要主机吗深圳网站公司排名
  • 支付宝也做网站吗北京优化互联网公司
  • 海口模板建站哪家好站长工具中文
  • 网站建设两个方面公众号推广方案
  • 做高仿包的能做网站吗千网推软文推广平台
  • 怎么看别人网站是哪里做的在哪买网站链接
  • 计算机网络网站域名
  • 企业网站html模板下载公司排名seo
  • 导购个人网站怎么做的百度推广怎么做的
  • 个人备案的网站可以做商城b2b网站大全免费
  • 高端网站建设的市场分析什么是淘宝搜索关键词
  • 上海seo网站建设网站制作出名的公司