Есть ли способ создать SolidBrush
глобально, или я должен клонировать существующую кисть?
Глобальная переменная:
Gdiplus::Brush* WhiteBrush;
Код области:
{
Gdiplus::SolidBrush white(Gdiplus::Color(0, 0, 0));
WhiteBrush = white.Clone();
}
Вы можете создать новую кисть в глобальной декларации. Он будет создан во время инициализации статического объекта во время выполнения.
#include <memory>
std::unique_ptr<Brush> WhiteBrush( new SolidBrush(Color(255, 255, 255, 255)) );
Не-умная версия указателя будет:
Brush * WhiteBrush = new SolidBrush(Color(255,255,255,255));
Других решений пока нет …