Visual Studioでデバッグしてたら、ウォッチ出来ない変数が。
こんなエラーです。
ウォッチ出来る変数もあれば、ウォッチ出来ない変数もあったりして。
VisualStudioはたまにしか使わないので、なにがなんやらよくわからず放置していたのですがさすがにストレスが溜まり原因を調べる事にしました!
スポンサーリンク
Releaseモードでデバッグするとウォッチ出来ない
結論から言うと、Releaseモードでデバッグしているのが原因でした。
Releaseモードだと、コードの最適が行われるので、その影響で変数がウォッチ出来たり、出来なかったりするんですね。
なので、Debugモードでデバッグすれば解決です!!
普段VisualStudioを使っていないのでまったく気づきませんでした…
それでもReleaseモードでデバッグしたい時の方法
ところがですね、僕が修正してるプロジェクトが何故かDebugモードだと動かないんです!
Releaseモードじゃないとデバッグ出来ないという本末転倒な状態。泣
本来は、Debugモードでデバッグ出来るように整備するべきなんですが、ちょろっと修正するだけの案件で調査している時間をとれないので応急処置をする事に。
応急処置の方法
下記のコードをソースに埋め込みます。
#pragma optimize("", off)
これで、コードの最適化を無効にできます。
見れなかった変数が、ばっちりウォッチ出来るようになりました!
まとめ
応急処置の対処で若干スッキリしませんが、良しとしましょう。
つねにベスト・プラクティスってわけにはいきませんからね。
妥協することも大切です。と自分にいいきかせました。笑