как инициализировать динамический массив CachedBitmap?

У меня в файле заголовка есть

std::shared_ptr<CachedBitmap>**CachedBitmap;

в .cpp я пытался инициализировать так:

Bitmap* bit = new Bitmap(L"file");
Graphics graphics(hdc);
(CachedBitmap[0]) = PNGLoader::createCachedBitmap(bit, hdc);
graphics.DrawCachedBitmap(CachedBitmap[0].get(), position.x, position.y);

std::shared_ptr<CachedBitmap> PNGLoader::createCachedBitmap(Bitmap* originalBitmap, HDC hdc)
{

    Graphics graphics(hdc);
    return std::make_shared<CachedBitmap>(originalBitmap, &graphics);
}

когда я запускаю программу, у меня возникает ошибка исключения: CachedBitmap[0] is nullptr

после пытался так:

(**CachedBitmap) = std::make_shared<::CachedBitmap>((new ::CachedBitmap(bit, &graphics))[5]);
(*CachedBitmap[0]) = PNGLoader::createCachedBitmap(bit, hdc);
graphics.DrawCachedBitmap(CachedBitmap[0]->get(), position.x, position.y);

ошибка Gdiplus::CachedBitmap::CachedBitmap: невозможно получить доступ к private члену, объявленному в классе "Gdiplus"::CachedBitmap"


Ответы (0 шт):