Это оскорбительная строка:
Texture *texture = new Texture (...);
Я получаю от bad_alloc здесь:
void *__CRTDECL operator new(size_t size) _THROW1(_STD bad_alloc)
{ // try to allocate size bytes
void *p;
while ((p = malloc(size)) == 0)
if (_callnewh(size) == 0)
{ // report no memory
static const std::bad_alloc nomem;
_RAISE(nomem);
}
return (p);
}
размер ~ 28 байт
и до сих пор программа поместила, возможно, 2 МБ в кучу в 32-битной системе (новая перезагрузка), и до этого в куче выделялось только около двадцати вещей, поэтому я знаю, что повреждения кучи нет.
Я так растерялся ...