I am try to solve some problems in my program and it would appear that there is either a problem with my copy constructor or with my destructor. I am getting a memory exception.
That code doesn't make any sense. First you initialize your members to the values passed by the object to copy, through the initializer list. Then you allocate memory for the very same members and copy everything again.
Most likely you are copying junk data into an uninitialized pointer. Get rid of the initializer list :readArray(a.readArray),arraysize(a.arraysize)
.