起重机优化方法

时间:2015-10-02 11:12:21

标签: c# .net optimization

你们中的一些人可能有这本书(在我的例子中是德语)" Einstieg in Visual C#2013"托马斯泰斯。在这本书中,有一个关于编程简单起重机的练习。

我想通过用一个方法替换if else查询来优化我的代码,在每个方法之前调用它。 if if = contine with code,if false = stop continue并在标签中显示 var sources = [ { size: 16, source: 'resources/bower_components/famfamfam-silk/dist/png' }, { size: 22, source: 'resources/assets/icons/22' }, { size: 38, source: 'resources/assets/icons/38' } ]; for(var i in sources) { var set = sources[i]; mix.spritesmith(set.source, { imgOutput: 'public/icons', cssOutput: 'public/css', imgName: set.size + '.png', cssName: 'icons-' + set.size + '.css', imgPath: '../../icons/' + set.size + '.png', cssOpts: { cssSelector: function(item) { console.log(set.size); //PROBLEM HERE. Always prints 38! Should print 16 - 22 - 38. return '.icon' + set.size + '-' + item.name.replace('_', '-'); } } }); } 并且不执行其余的代码。

errormessage

2 个答案:

答案 0 :(得分:0)

我会选择:

private void checkKranIstAn()
{
    lblAnzeige.Text = kran ? " " : "Der Kran wurde noch nicht angeschaltet! Bitte anschalten!";
}

您跳过检查无用的kran == true,删除return语句,这也是无用的。

或者这个漂亮的功能:

private bool Kran()
{
    lblAnzeige.Text = " ";
    if(!kran)
    {
        lblAnzeige.Text = "Der Kran wurde noch nicht angeschaltet! Bitte anschalten!";
        return false;
    }
    return true;
}

使用:

private void cmdHakenRaus_Click(object sender, EventArgs e)
{
    if (Kran())
    {
        panel4.Size = new Size(panel4.Width = panel4.Width, panel4.Height = panel4.Height + 10);
    } 
}

答案 1 :(得分:0)

您可以使用单个if语句,查看?运算符。 return语句无用。

private void checkKranIstAn()
{
    lblAnzeige.Text = Kran ? string.Empty : "Der Kran wurde noch nicht angeschaltet! Bitte anschalten!"
}