всплывающая ошибка визуальной студии копирования объекта: std :: bad_alloc

Я хочу скопировать содержимое страницы в другой объект Page.
Однако это имеет ошибку, я думаю, что это связано с распределением памяти.
Я не нашел конкретной причины. Кто-нибудь объяснит о причине?
Я прикрепил свой исходный код к копирующему объекту. Поблагодарить

DB.Pages = new Page[numPages];
Page* tmp_Pages = new Page[numPages];

uint count = 0;
for(uint p = 0;p < numPages; p++){
uint *data = new uint[MAX_NUM_NODES_PER_DATA];
uint *tmp_data = DB.getPageByID(p)->data;
memcpy(data, tmp_data, sizeof(uint) * MAX_NUM_DATAS_PER_PAGE);
tmp_Pages[count].data = data;
count++;
}
memcpy(DB.Pages, tmp_Pages, sizeof(Page) * numPages);

Ошибка файла mlock.c
void __cdecl _unlock (int locknum)
{
/ *
* покинуть критический раздел.
* /
LeaveCriticalSection (_locktable [locknum] .lock);
}
Microsoft C ++ исключение: std :: bad_alloc (расположение в памяти 0x002afa90)

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector