これはもっと速い方法ですか?if文に複数のチェックがあります
if (keyCode != 66 && keyCode != 8 && keyCode != 21 && keyCode != 22) {
}
keyCodeはintです。
これはもっと速い方法ですか?if文に複数のチェックがあります
if (keyCode != 66 && keyCode != 8 && keyCode != 21 && keyCode != 22) {
}
keyCodeはintです。
Faster?それはあなたのために遅すぎますか?オプティマイザを再生しないでください。読み取り可能なコードを書いて、オプティマイザにマイクロ最適化を任せます。 時期尚早の最適化は、ジョッシュさんのコメントの後にすべての悪
編集のルートである:あなたがそれらの本当に多くを持っている場合は、(そのようなセットや配列など)の容器に入れ
とfind
keyCode
が入っています。あなたがそれを見つけたら、あなたの状態は偽です。そうでなければ、それは本当です。 Daveのコメントを1として
:
if(!MyCodesSet.Contains(keyCode)){
}
はい、switch
文は直接ジャンプに変換します。しかし、JITがあなたのコードにそれを実行する可能性がありますので、switch
が実際に高速であれば試してみる必要があります。
可読コードでは、これらの定数値の名前を指定することを意味します。つまり、66,8,21,22については何が重要なのでしょうか? – DaveJohnston
15枚を追加する必要がある場合はどうすればいいですか?何とか配列を使用できますか? – Josh
以下を追加してください: "時間の約97%という小さな効率については忘れてください。";) – Jacob