关于GDI+对象的释放有关问题
关于GDI+对象的释放问题
现在有很多GDI+的教材,但很少谈到GDI+对象的释放问题.
我看到一种说法,说凡是用这种方法建立的对象都要手工释放:
Image *pimage = new Image(...);
而用下面这种方法建立的对象不需要释放,函数结束后自动释放:
Image image(...);
是这样的吗?
另外,Graphics对象需要不需要手工释放?画笔,画刷,字体这些对象呢?需要不需要手工释放?
------解决方案--------------------
确实是看错了,
gdi+对象都自己会管理好释放,一般不需要使用操心,具体你可以看其释构函数,比如Image的释构函数调用了DllExports::GdipDisposeImage(nativeImage);
Image *pimage = new Image(...);必须使用delete 删除,这是必须的
现在有很多GDI+的教材,但很少谈到GDI+对象的释放问题.
我看到一种说法,说凡是用这种方法建立的对象都要手工释放:
Image *pimage = new Image(...);
而用下面这种方法建立的对象不需要释放,函数结束后自动释放:
Image image(...);
是这样的吗?
另外,Graphics对象需要不需要手工释放?画笔,画刷,字体这些对象呢?需要不需要手工释放?
------解决方案--------------------
确实是看错了,
gdi+对象都自己会管理好释放,一般不需要使用操心,具体你可以看其释构函数,比如Image的释构函数调用了DllExports::GdipDisposeImage(nativeImage);
Image *pimage = new Image(...);必须使用delete 删除,这是必须的