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

枚举法——C++算法【泪光2929】

前言
         "打牢基础,万事不愁" .C++的基础语法的学习."学以致用,边学边用",编程是实践性很强的技术,在运用中理解,总结.

引入
       枚举在成熟框架中,用得还挺多的.枚举可以让程序更容易理解

        之前写过一篇关于枚举的帖子---  白话编程---数据篇(4)枚举-CSDN博客

        现在看看是以纯C写的,内容不够完整.现以C++做个补充

枚举的编程思想
        枚举的意义是让程序可读性更强.他有三种形式,这三种形式的目的是相同的:参数符号化.也就是说他的编程思想是符号化参数.

C++中枚举的三种形式
        枚举有三种形式: 符号常量集合, 无类作用域枚举,类作用域枚举 .其中符号常量集合可以完全替代常量(一般是整型常量),后两种被看作自建的新数据类型.

 符号常量集合
        第一种枚举是完全的字面常量替代.还有一种符号常量const int LENGTH=10;枚举相当于符号

常量的集合:

        1,书写形式:下面的表达完全是一样.

enum {SLEEP=1,WORK=2,EAT=3}
const int SLEEP=1;
const int WORK=2;
const int EAT=3;

        2,使用举例:

#include<iostream>
enum {SLEEP=1,WORK=2,EAT=3};
void doSomething(int num);int main(void) {using namespace std;doSomething(SLEEP);		//枚举做参数,可读性强doSomething(1);			//整型常量做参数doSomething(2);			//整型常量做参数
}void doSomething(int num) {if(num==1)std::cout << "我在做梦" << std::endl;if(num==2)std::cout << "我在写代码" << std::endl;if(num==3)std::cout << "我在吃肉" << std::endl;
}

说明:符号常量型枚举的思路和实现步骤如下

        1)需求:想表达一串逻辑,在"情形1","情形2"...等多种情形下做什么事, 

        2)函数声明用int类型做形参,函数内部逻辑和形参相关;

        3)定义符号常量型枚举

        4)调用函数时传入枚举

在C++标准函数库中,异常部分有调用exit(SUCCESS);  exit(FAILURE)就是其应用

相关文章:

  • Android compileSdkVersion、minSdkVersion、targetSdkVersion的关系以及和Unity的关系
  • 微格式:为Web内容赋予语义的力量
  • 100 个 NumPy 练习
  • 【Linux】Linux 操作系统 - 11 , 进程状态 - 详谈《僵尸进程和孤儿进程》让你彻底明白 !
  • 基于CATIA参数化球体建模的自动化插件开发实践——NX建模之球体命令的参考与移植
  • 微前端统一状态树实现方案
  • vue elementui 去掉默认填充 密码input导致的默认填充
  • String、StringBuffer、StringBuilder 的区别
  • 2025年4月个人工作生活总结
  • 93. 后台线程与主线程更新UI Maui例子 C#例子
  • 用于实时辐射场渲染的3D高斯溅射——3D Gaussian Splatting for Real-Time Radiance Field Rendering
  • 「Mac畅玩AIGC与多模态10」开发篇06 - 使用自定义翻译插件开发智能体应用
  • 拥抱 Kotlin Flow
  • MySQL入门篇(SQL语句、函数、约束、多表查询、事务)
  • Linux -- SysremV 共享内存通信
  • 软件产品登记测试 VS 确认测试有何不同?第三方检测机构深度解析
  • 0901context_useReducer_状态管理-react-仿低代码平台项目
  • Django 学习指南:从入门到精通(大体流程)
  • 健康养生:构建健康生活的多维度指南
  • 扩展根分区
  • 女冰队长于柏巍,拒绝被年龄定义
  • 夜读丨春天要去动物园
  • 五一“大车流”来了,今日午后G40沪陕高速开始迎来出沪高峰
  • 魔都眼|静安光影派对五一启幕:苏河湾看徐悲鸿艺术画作
  • 宁波市纪委监委通报4起违反中央八项规定精神典型问题
  • 中国科学院院士张泽民已任重庆医科大学校长