これは問題のある行です:
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 バイトです
これまでのところ、プログラムは 32 ビット システム (フレッシュ リブート) のヒープにおそらく 2 MB を配置しましたが、これまでは約 20 個しかヒープに割り当てられていなかったため、ヒープの破損がないことがわかりました。
私は困惑している...