加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

在下面的伪c代码片段中应避免重复代码的方法是什么?

发布时间:2020-12-16 10:12:03 所属栏目:百科 来源:网络整理
导读:if(var == something) { A(); B();} else if(var == something_else) { A(); B(); C();} else { assert(false);} 如果情况如何,我如何避免重复调用A()和B()的代码.我应该使用开关盒, switch(var) {case something:case something_else: A(); B(); break;}if
if(var == something) {
    A();
    B();
} else if(var == something_else) {
    A();
    B();
    C();
} else {
    assert(false);
}

如果情况如何,我如何避免重复调用A()和B()的代码.我应该使用开关盒,

switch(var) {
case something:
case something_else:
    A();
    B();
    break;
}
if (var == something_else)
   C():

什么是更好的解决方案?在switch vs if else中是否有任何性能损失?

解决方法

由于呼叫顺序无关紧要,请尝试以下方法:

switch(var) {    
    case something_else:
        C();
    case something:
        A();
        B();
    break;
    default:
        assert(false);
    break;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读