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

大量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日