C++ プログラムで Google Sketch Up モデルを表すために、 GLMmodelオブジェクトを使用します。これらのオブジェクトには、次のような方法でオブジェクトのすべての頂点のリストを含むメンバー (頂点) があります。頂点 2 の...]。これらの値をすべて読み取ると、最初の 3 つの値 (最初の頂点の座標) を除いて、すべての値が小さな数値になります。これらはすべて -431602080.000000 です。これは私のプログラムでは意味がありません。私はそれをグーグルで検索しましたが、この値が C++ プログラムで頻繁に表示されることがわかりましたが、それが何を意味するのかわかりません。何か案は?
1130 次
1 に答える
6
そう、これが「魔力」です。16 進ビューを使用してデバッガーで変数を見ると、0xcdcdcdcd が表示されます。これは偶発的な値ではなく、Microsoft CRT のデバッグ アロケータによって使用される値です。1つ、おそらく他の人のために。malloc または new で割り当てたメモリをこの値に初期化します。もちろん、float 型または double 型の変数の場合はそれほど明確ではありません。int と文字列を使用すると簡単になり、ポインターを使用すると特に便利です。MS CRT を使用していると仮定すると、デバッグ アロケータのマジック値はここに記載されています。
値を初期化するのを忘れました。それはあなたのコードのバグです。
于 2012-04-14T18:14:02.960 に答える