C++中怎么使用default
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,本篇内容介绍了"C++中怎么使用default"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!ES.7
千家信息网最后更新 2025年02月02日C++中怎么使用default
本篇内容介绍了"C++中怎么使用default"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
ES.79:使用default处理一般case
Reason(原因)
Code clarity. Improved opportunities for error detection.
代码清晰性。增加发现错误的机会。
Example(示例)
enum E { a, b, c , d };
void f1(E x)
{
switch (x) {
case a:
do_something();
break;
case b:
do_something_else();
break;
default:
take_the_default_action();
break;
}
}
Here it is clear that there is a default action and that cases a and b are special.
可以清晰地看出存在一个默认case,而a和b是特殊case。
Example(示例)
如果就是没有默认动作,你只想处理特殊case时应该怎么做呢?这种情况下,保留一个空的默认处理,否则不可能知道你是否意图处理所有case。
void f2(E x)
{
switch (x) {
case a:
do_something();
break;
case b:
do_something_else();
break;
default:
// do nothing for the rest of the cases
break;
}
}
如果漏掉了default,维护者或者编译器可能会合情合理的假设你意图处理所有case。
void f2(E x)
{
switch (x) {
case a:
do_something();
break;
case b:
case c:
do_something_else();
break;
}
}
你是忘记了case d还是故意遗漏的?忘记一个case通常发生在增加枚举值之后却没有为所有switch语句增加针对该值的处理的时候。
Enforcement(实施建议)
标记针对枚举类型的、没有处理所有枚举值并且不包含default处理的switch语句。对于某些代码这种做法可能会产生太多的假阳性;如果发生这种情况,只标记处理了大部分case但不是全部case的情况(这正是很早期的C++编译器采用的策略)。
"C++中怎么使用default"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
处理
情况
C++
特殊
代码
内容
意图
更多
标记
知识
示例
编译器
语句
编译
合情
实用
合情合理
学有所成
接下来
做法
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
access数据库查找姓名
如何在服务器端清理用户端的缓存
计算机网络技术王群
普特恩斯网络技术有限公司
边界网络技术的理念
wow影之哀伤服务器
用虚拟机还是云服务器好
数据库课程设计系统功能分析
浏览器不能读取本地数据库
上海软件开发价格有哪些
法律怎样定义数据库
360杯网络安全技能大赛
慧盈通网络技术
日结数据库
数据库云备份
佛山地址标注数据库
网络安全主题广场宣传
sql数据库设计理论问题
档案馆网络安全自查工作方案
坦克世界抗战服务器
mysql数据库与下位机连接
TD数据库报3993
房子出租放服务器
逐风者服务器为什么是灰的
云端服务器和oa系统哪个安全
数据库运维工作内容
软件开发二次合同范本
赣州易启网络技术支持
群力软件开发地址
网络技术考研的含金量