2011-10-26 16 views
0

これらのうちどれが最も効率的な/より小さなバイナリコードを生成しますか?iPhone - 最も効率的な/より小さいコードを生成しますか?

THIS

int sum = 0; 
for (NSNumber * oneObj in objArray) { 
    if ([oneObj intValue] > 10) 
     sum += [oneObj intValue]; 
    else 
     sum -= [oneObj intValue]; 
} 

OR THIS?

int sum = 0; 
for (NSNumber * oneObj in objArray) { 
    sum += ([oneObj intValue] > 10) ? oneObj : -oneObj; 
} 

それは、この凝縮形式でIFを書いて任意の違いを作るのですか?

+3

におそらくとにかくそれを最適化するコンパイラを表現する2つの異なる方法ですので、私は両方とも同じになります推測しています。 – skyuzo

+0

私はこれにも非常に興味があります。うまくいけば、答えの人は詳細を与える! –

+5

私には早すぎる最適化のような匂いがします。 –

答えて

2

コンパイルされたバージョンは同じです。

それは同じこと

+3

'[引用要] ' –

+1

@Matt this isnt Wikipedia。あなたが同意しない場合、downvote! –

+0

はい、早すぎる最適化の天国への歓迎 –

関連する問題