オープンソースのコードで遭遇したものなんですが、変数の初期化とメモリについて基本的なことも含めて確認したいことがあります。
whileループの中で変数の初期化と値のセットを行い、直後にもう一度値のセットをしているコードを見かけました。
この直後に行う値の再配置には何か意味があるのでしょうか?
メモリの負荷軽減や処理速度に関わるのではないかと考えました。
C#
1public Thread Tobj; 2 3public void start() 4{ 5 if (Tobj == null) 6 { 7 Tobj = new Thread(new ThreadStart(prc)); 8 Tobj.Start(); 9 } 10} 11 12private void prc() 13{ 14 while (true) 15 { 16 int a = getRaw(); 17 a = getRaw(); //この部分は必要? 18 19 if (a > 0) 20 { 21 Console.WriteLine(a); 22 } 23 } 24}
また変数の初期化だけループの外で行った場合もメモリの負荷に違いなどはあるのかも疑問に思いました。
C#
1private void prc() 2{ 3 int a; 4 while (true) 5 { 6 a = getRaw(); 7 8 if (a > 0) 9 { 10 Console.WriteLine(a); 11 } 12 } 13}
変数の初期化直後の値の再配置に意味はあるのか?
またループの外で変数を初期化してループ内では値の設定だけをする場合との違いはあるのか?
以上の2つが知りたいです。基本的な変数とメモリの負荷について理解できていない状態ですがご教示お願いします。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/04/19 14:37