贴图:CImage VS Bitmap
摘要:为了比较小的资源占用和比较快速的贴图速度,使用BitBlt自然是最佳方式,这是为数不多的软渲染GDI APIs里面有硬件加速的API之一,以前看到国外测试速度,不同的硬件下BitBlt比Graphics::DrawImage快100-1w倍,测试很简单就不说了,直接贴图100w张比执行时间。 为了使用BitBlt,需要HBITMAP数据,初始化CImage后调用CImage::Detach可以直接获得,该HBITMAP是DIBSECTION类型,各数据跟CImage一致,后面的Bitmap就出问题了。CImage::Loadinline HRESULT CImage::Load( LPC...
阅读全文
posted @
2011-11-22 12:46
asight
阅读(4546)
推荐(0)
Aero for WTL application
摘要:初用WTL,发现搜不到Aero效果的WTL文章,那我就用WTL练一下手,我详细讲一下步骤。XXXDlg.h文件:(.cpp会编译报错,所以全部消息映射实现在.h)头文件:#include "dwmapi.h"#pragma comment(lib,"dwmapi.lib")1.添加Aero状态的成员private: BOOL m_bAeroEnabled;2.初始化窗体时判断Aero ::DwmIsCompositionEnabled(&m_bAeroEnabled); PostMessage(WM_DWMCOMPOSITIONCHANGED);
阅读全文
posted @
2011-11-17 16:40
asight
阅读(786)
推荐(0)
c++ 深拷贝,浅拷贝,赋值操作的调用情况
摘要:声明时,初始化=操作,()操作都是调用拷贝构造函数,只有初始化完成后,=操作才是operator=,示例:Type a;Type b(a); // 拷贝构造函数Type a;Type b = a; // 拷贝构造函数Type a;Type b;b = a; // operator=(Type&)由于operator=和拷贝构造函数功能几乎一样,通常管理深拷贝成员,实现1个operator=就行class Type{ const Type& operator= (const Type& right) { if (this == &right) ...
阅读全文
posted @
2011-11-03 17:22
asight
阅读(956)
推荐(0)