私はこのプログラムを実行しようとすると、このセクションで発生しsegementation障害があります:Segementation max_elementを使用して、障害()とmin_element()
std::vector<double> dist1(dist);
dist1.erase(std::remove(dist1.begin(), dist1.end(), 0), dist1.end());
max = *std::max_element(dist1.begin(),dist1.end());
min = *std::min_element(dist1.begin(),dist1.end());
それは(max_elementの使用です) min_element()はセグメンテーション・フォルトを引き起こしますが、なぜそれは表示されません。ここで私がやっていることは、ベクトルdistをdist1にコピーし、新しいベクトルのすべての発生を取り除き、distの残りの項目の最小値と最大値を検索します。 "max"と "min "は以前に宣言されたdouble型の変数です。 "dist"は、先に
として宣言されています。std::vector<double> dist; //vector used to hold the distances between adjacent vertices
dist.resize(size);
コードはLinuxサーバでg ++でコンパイルされています。ご意見をお聞かせください。
正常にコンパイルされたすべてのコードにバグが自動的に発生した場合、私は仕事を失います。 –