1

または他の数学演算などの演算が与えられたint myNum = 5 + (5 * 9)場合、このステートメントのどの部分がコンパイラによって実行されますか?実行時に実行されるのはどれですか?明らかに、絶えず変化する変数はコンパイル時に単純化することはできませんが、特定の操作は単純化される可能性があります。コンパイラーは、そのような単純化(上記のステートメントの作成などint myNum = 50;)を実行することさえ気にしますか?これは、負荷、速度、またはその他の客観的な測定の観点からも重要ですか?

ここでは細部が重要です。可能な限りあなたの考えを詳しく説明してください。

これは、あらゆる算術演算に適用されることを意味します。

4

1 に答える 1

3

定数畳み込みを確認してください。

定数畳み込みは、コンパイル時に定数式を単純化するプロセスです。定数式の項は通常、整数2などの単純なリテラルですが、値が変更されない変数、または定数として明示的にマークされた変数にすることもできます。

于 2012-10-10T01:47:05.023 に答える