似たような質問がたくさんあることは知っていますが、まだ役立つものは見つかりませんでした。私はこれで数時間過ごしましたが、それは私を夢中にさせています. コピー コンストラクターによって作成された変数に対してデストラクタが呼び出されると、セグメンテーション エラーが発生します。
//Copy Constructor
Stack::Stack(const Stack &aStack)
{
size = 0; //this is incremented as new items are pushed onto the stack.
cap= aStack.cap;
items = new int[aStack.cap]();
for (int i = 0; i < aStack.size; i++)
this->push(aStack.items[i]); //Adds an item if not full and increments size
// I have also tried: items[i] = aStack.items[i]
}
//Destructor
Stack::~Stack()
{
cap= 0;
size= 0;
delete [] items;
items = NULL;
}
コピー コンストラクターが間違っているような気がしますが、それが何であるかわかりません。