清河闲野 2023-03-27 11:38 采纳率: 33.3%
浏览 81
已结题

大量switch,case怎么优化?

事情是这样的,前两天搞了一个代码运用了五十几个switch,case,搞完发现这个代码又臭又长,所以想优化一下。

代码逻辑是这样的 case x: sendbyte (); break; 最多就是加个Flag 或者判断Flag,有判断超过4个的已经封装成函数。
现在的问题就是代码的可读性很直观,但是又臭又长,case的数据是跳变的,用枚举的话需要3~5个枚举再加一个不少case的switch才能实现,不知道各位有什么好的方法可以在既不失去可读性的情况下(可以稍微降低),又能优化代码

  • 写回答

4条回答 默认 最新

  • 於黾 2023-03-27 13:49
    关注

    你的50多个分支就没有任何一点相似的地方吗
    其实很多分支条件可以合并,写成一句公式
    比如凯撒密码,你写成52个分支,A变B,a变b,也是能写的,但是其实ascii码+1就行了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 4月4日
  • 已采纳回答 3月27日
  • 创建了问题 3月27日

悬赏问题

  • ¥15 2024-五一综合模拟赛
  • ¥15 如何将下列的“无限压缩存储器”设计出来
  • ¥15 下图接收小电路,谁知道原理
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口