処理速度や負荷に関する質問です。
下記の2つの文は、どちらが良いでしょうか。
1
C#
1int gokei = 0; 2int kingaku = 0; 3for(int i = 0; i < suryo.Length; i++) 4{ 5 kingaku = suryo[i] * tanka[i]; 6 gokei += kingaku; 7}
2
C#
1int gokei = 0; 2for(int i = 0; i < suryo.Length; i++) 3{ 4 int kingaku = suryo[i] * tanka[i]; 5 gokei += kingaku; 6}
上記1の方は、変数kingaku
の宣言は1回だけなので、内部で
メモリの場所を確保したりする回数も1度だけです。
ひとつのメモリを書き換えるだけで済むので、処理は若干早いような気がします。
しかし、for文が終わった後もその変数はスコープを抜けるまで残り続けます。
2の方は、ループ毎に変数kingaku
を作成していますが、for文を抜けると
変数は破棄されると思います。
例文のようなものなら差は無いでしょうが、大きなプログラムだと
差が出てくるのではないかと思いました。
どちらが良いでしょうか。

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/04/11 03:36 編集