クラスオブジェクトを含むベクトルがあります。私はこのように宣言しました
vector<Aircraft> queue;
ベクトルの最初の要素を消去します。しかし、それはまだベクトルの最初の要素のようです。これは私がしました。
queue.erase(queue->begin());
cout<<queue.size(); //printed 0
Aircraft temp = queue.front();
cout<<temp.id; //expected a segfault error
最初の要素を消去した後、ベクトルのサイズは0です(要素は1つしかありませんでした)。ベクトルから最初の要素を消去し、その後サイズがゼロになったため、temp(Aircraft)のIDを確認しようとしたときに、セグメンテーション違反エラーが発生することが予想されていました。ベクトルをクリアしましたが、「queue.front」はオブジェクトを返し、coutステートメントはオブジェクトのIDを出力します。