Я считаю, что это должно быть довольно просто и понятно. Почему я получаю сообщение об ошибке? Вот код:
std::vector<double> *myVectorArr;
myVectorArr = new std::vector<double>[10];
delete myVectorArr;
Ошибка, которую я получаю:
munmap_chunk(): invalid pointer
Aborted (core dumped)
Почему я получаю эту ошибку?
Заранее спасибо!
Ваш код имеет неопределенное поведение. Поскольку вы используете форму массива new, вам нужно использовать форму массива delete. Так что delete [] myVectorArr. А еще лучше используйте std::vector<std::vector<double> > и вообще избегайте необходимости вручную использовать new и delete.





Вам нужно использовать оператор удаления [] вместо оператора удаления
delete [] myVectorArr;
В сторону: почему не
std::vector<std::vector<double>>илиstd::unique_ptr<std::vector<double>[]>?