我經常發現自己在那樣的代碼前面:C#的性能和可讀性的按鈕開啓/關閉
if(Something > 0)
{
btnOne.Enabled = true;
btnTwo.Enabled = true;
btnThree.Enabled = false:
}
else
{
btnOne.Enabled = false;
btnTwo.Enabled = false;
btnThree.Enabled = true:
}
而且我一直在想,如果這是更好地讓它像,或把這樣的:
bool ButtonEnabled = (Something > 0);
btnOne.Enabled = ButtonEnabled;
btnTwo.Enabled = ButtonEnabled;
btnThree.Enabled = !ButtonEnabled;
實現的問題是有點議論,讓我們拋開「可讀性」的因素,並專注於性能的因素...會是什麼最好?還有一個任務或條件?
在此先感謝您的建議(或更好的書寫方法)!
編輯:更正了我的第二個片段中的錯誤。 編輯:兩個最初的例子並不相同...
既然它不是你想要的答案,我正在寫評論。當涉及到這樣的代碼時,不要擔心性能問題。大多數情況下它並不重要(除非你在循環中這樣做的可能性很小)。去可讀性! – Hemant 2010-10-27 06:33:19
你的兩個片段並不相同。在第一個'btnThree.Enabled'和'btnFour.Enabled'只有在'Something <= 0'時才被設置(反之亦然),而在第二個按鈕被設置。 – 2010-10-27 07:12:57
是的你說得對,我會稍微糾正一下! – 2010-10-27 07:45:59