警告 checkbox value (-842150451) out of range が出るのは何故?

[戻る]
菊千代 2008/10/12(日) 16:46:40
お世話になります。初心者です。

VS2005, VC++, MFC, SDI, CFormView のアプリです。
デバッグすると、
Warning: dialog data checkbox value (-842150451) out of range.
という警告が3行出ます。
チェックボックスは4個取り付けています。

どういうときにこの警告は出るのでしょうか?
チェックボックスにレンジなんてあるのでしょうか?
4個のチェックボックスに対して OnBnClickedCheckXXXX 関数を記述していますが、
その中身の違いで、4個中3個に警告が出るのでしょうか?
起動して終了するだけで、チェックのON/OFFはしないで、警告が出ます。

Web上で探しましたが、参考になるページが見つかりませんでした。
よろしくお願いいたします。

Ban 2008/10/12(日) 18:18:09
デバッグで-842150451という値からして(16進数にしてみてください
これはVCが *デバッグ時に未初期化変数に* 設定する値です)、
変数が未初期化の状態で参照されています。

例えばコンストラクタ等で値をきちんと初期化すれば消えるはずです。

なぜ出るものと出ないモノがあるかはソースを見ないと判断できませんが、
初期化方法が間違ってるとか、記述が漏れているとかでしょうか。
エラーが出ないものだけコンストラクタで初期化してるとか有りませんか。


# チェックボックスは通常、0〜1のrangeを期待しているのでは?

菊千代 2008/10/12(日) 19:44:17
[[解決]]
Ban 様
ありがとうございました。
4個中3個はコンストラクタでの初期化をしていませんでした。
綺麗に解決しました。

古いスレッドには追加発言できません。