Вектор push_back() завершает работу программы
Я пишу программу на c++ с помощью eclipse. У меня есть вектор, который должен хранить объекты-указатели. Когда я компилирую программу, она выходит из строя, говоря, что программа перестала работать. Как я могу исправить эту ошибку?
//declaring pointer to TopStock class TopStock* stock = new TopStock(row[0], row[1], row[2], row[3], row[4], row[5], row[6], row[7]); //adding the pointer to v_stockRows v_stockRows.push_back(stock); //deleting pointer //delete stock;
Здесь строка представляет собой другой вектор (значения присваиваются)
Что я уже пробовал:
Я попробовал это сделать
v_stockRows.push_back(&stock);
CPallini
Когда вы запускаете программу, она выходит из строя. Вы должны опубликовать больше кода, чтобы мы могли его исправить.
Rick York
Что нам действительно нужно увидеть, так это то, как был объявлен v_stockRows. Акт добавления данных в вектор приводит к сбою программы, так что это означает, что функция push_back вызывает проблему. Ключ к этому лежит в том, как данные хранятся в векторе, поэтому нам нужно увидеть это, чтобы определить, в чем заключается проблема. Я предполагаю, что есть проблема с конструктором копирования.