尝试在C ++中创建动态数组时引发内存错误

对于我的作业,我需要制作一个动态数组类,该类利用addEntry和deleteEntry函数。我一直在寻找这种解决方案的一段时间,找不到它。我的代码如下:

Exception thrown: read access violation.
_Pnext was 0xFDFDFE01.

我注释了addEntry和deleteEntry函数,并且可以正常编译。在取消注释它们后,我取消注释“ test-> addEntry(“ joe”);“在主要方法,它编译良好。

引发的错误是:

rando(4,10)

xmemory文件中的文件,我相信它只是Visual Studio库的一部分。

如果您需要任何其他信息,请告诉我。

jita2009 回答:尝试在C ++中创建动态数组时引发内存错误

dot有两个问题。您有一个分配(调用addEntry)和两个删除,这是通过从函数末尾删除new(在那里删除新分配的内存,剩下{{1})来解决的}指向不再分配的内存。

另一个是您过早增加delete [] tempArray;。您需要先分配给dynamicArray,然后再分配大小。

本文链接:https://www.f2er.com/2996233.html

大家都在问