- 【初心者歓迎】C/C++室 Ver.94【環境依存OK】©2ch.net
701 :デフォルトの名無しさん[sage]:2015/07/12(日) 10:20:43.33 ID:cli6Wler - 質問なんですが、
{ { int i = 5; } i = 0; // エラー.iはもう存在しない } のように、他のスコープでは存在したが現在見ているスコープからは見えない変数って、完全に消滅(該当のスタックメモリに再利用可の印をつけ、名前テーブルから削除)しているんでしょうか? それとも名前テーブルから削除されるだけなんでしょうか?
| - 【初心者歓迎】C/C++室 Ver.94【環境依存OK】©2ch.net
705 :デフォルトの名無しさん[sage]:2015/07/12(日) 14:32:34.21 ID:cli6Wler - そうだった、スタックだから単純にカレントインデックス動かすだけで処理するんだった……
ありがとうございました。 ということは、やっぱりループでのみ使う変数の定義は、ループ内に入れるべきなのかな。 コンパイラ依存でないコード(初めからループの外に定義を追い出す)と、コンパイラの最適化に頼ったコードの比較をしていて気になってました。
|
|