Я пытаюсь скопировать динамически размещенный массив в экземпляр. Мой код, кажется, копирует значения, но ему также нужно изменить размер массива, чтобы он соответствовал массиву размера "& other".
Небольшая информация о коде: под рукой два класса, один "Фильм ", который принимает название, время фильма и режиссера (все указатели) в качестве частных участников. Есть еще одна, называемая «MovieCollection», которая представляет собой массив, в котором хранится каждый экземпляр «Movie» в данном индексе.
//These are private member variables:`
int ArrySize = 50; //There is another section of code that points to this and resizes if needed, I believe it needed a size at runtime though.
//Array to store instance of "movie"
Movie *movieArry = new Movie[ArrySize];
//This is assignment operator
const MovieCollection& operator=(const MovieCollection& other)
{
delete []movieArray;
int otherSizeArry = other.ArrySize;
Movie* temp;
temp = new Movie[otherSizeArry];
for (int i = 0; i < otherSizeArry; i++)
temp[i] = other.movieArry[i];
return *this;
delete []temp;
}
Я использовал другую функцию, которую я написал, для изменения размера массива во время создания экземпляра. Например, экземпляр, который я хочу скопировать, имеет 10 индексов, но новый экземпляр, в который я пытаюсь скопировать значения, все еще имеет ограничение 50. Из того, что я понимаю, я должен удалить его, потому что размеры массивов не могут быть изменены, затем скопируйтеновый размер закончен (вместе со значениями).
Любая помощь будет принята с благодарностью и заранее благодарим вас. Кроме того, извините, если требуется больше кода. Я не хотел давать больше, чем нужно.