- 149 名前:デフォルトの名無しさん mailto:sage [2008/07/20(日) 17:16:25 ]
- VC++2005EEで作成しています。
有る関数の中でループを毎に乱数を発生させ、配列に値を保存させようとしたのですが 実行画面では同じ数値に成ってしまいました。デバックをしてみたところ @1から見ていくと、配列にちゃんと違う数値が入っていき、ループを抜けた @2までみても違う数値が保存されていました。 @2にブレークポイントを設定し、そこで値を確かめるとListの値には 同じ数値が配列に保存されていました。 全て値がう値が保存されている様にしたいのですが、何が問題になっているのか見当がつきません。 何か対策とかあるのでしょうか srand( (Uint32)time(NULL) ); m_Tmp = new Object(); @1 for ( Uint32 i=0; i<MAX; ++i ) { m_List.push_back( *m_Tmp ); m_List[i].SetNum( rand() % 10 ); } @2 ※SetNumは与えられた値を保存させるだけのメソッドです。
|

|