私が作業しているいくつかのコードには奇妙な問題があります: 私が知る限り、またチェックした限り、システム時間などのランダムなものに依存するコンポーネントはコードにありません。コードにブレークポイントを追加するだけで、プログラムの動作が変わります。動作が異なるだけです (コード内で値によって選択されるオブジェクトがいくつかありますが、それらの値はすべて 0 です。ブレークポイントを追加するときに、値が 0 である別のオブジェクトを選択するだけです)。 . 残念ながら、コードが多すぎるため、コードを投稿することはできません。
この種の動作の原因は何ですか?
編集:私は問題にもう少し時間を費やしました:それはブレークポイント自体に関連していないようです-異なる結果を生成する「最も簡単な」方法は次のとおりです:プロジェクトの別の.cppファイルからデバッグプロセスを開始するとき出力はすでに変化しています。「自動的にビルド」を無効にすると、これはもう起こりません。そのことから、コードに変更がなくても、何かが再構築されると結論付けています。また、実際に異なる動作を引き起こすクラスに絞り込みました。これは、フィボナッチ ヒープの実装です。