学了半天VC 谁知道这个宏是啥意思?IMPLEMENT_DYNAMIC
解决方案 »
- fatal error C1509: compiler limit : too many exception handler states in functio
- CListCtrl的双击事件::OnDblclkList1(NMHDR* pNMHDR, LRESULT* pResult)中,最后一个参数怎么用啊
- 自定义控件的重绘?
- 关于控制条窗口停靠的问题?
- 两个应用程序之间怎么共享一个全局队列啊?(在线等 转自Delphi版)
- 奇怪呀!SQl SERVER 2000里的Unicode字符类型在VC里没有对应的数据类型?
- 请教:对象指针链表,析够的时候,是否需要自己强行delete每个成员?立即结帐,谢谢!
- 是不是每个JPEG图片文件,都有一个缩略图呀,怎么解出这个缩略图呀。最好有源码。谢谢、
- 怎么判断一个字符串是一个合法的目录名?
- activex控件与多线程的问题,高手请进!
- 在运行时如何获得LISTCTRL的列的总数?
- 进程运行完后,如何得到它所使用的内存大小?
你可以看看
IMPLEMENT_RUNTIMECLASS(class_name, base_class_name, 0xFFFF, NULL)#define IMPLEMENT_RUNTIMECLASS(class_name, base_class_name, wSchema, pfnNew) \
AFX_COMDAT const AFX_DATADEF CRuntimeClass class_name::class##class_name = { \
#class_name, sizeof(class class_name), wSchema, pfnNew, \
RUNTIME_CLASS(base_class_name), NULL }; \
CRuntimeClass* class_name::GetRuntimeClass() const \
{ return RUNTIME_CLASS(class_name); } \以上是从AFX.H文件拷下来的,可以参考《深入浅出MFC》的说明。
IMPLEMENT_DYNCREATE(class_name,base_class_name)
说明:
通过DECLARE_DYNCREATE宏来使用IMPLEMENT_DYNCREATE宏,以允许CObject派生类对象在运行时自动建立。主机使用此功能自动建立对象,例如,但它在串行化过程中从磁盘读去一个对象时,他在类工具里加入IMPLEMENT_DYNCREATE宏。若用户使用DECLARE_DYNCREATE和IMPLEMENT_DYNCREATE宏,那么接着使用RUNTIME_CLASS宏和CObject::IsKindOf成员函数以在运行时确定对象类。若declare_dyncreate包含在定义中,那么IMPLEMENT_DYNCREATE必须包含在类工具中。
Visual C++ MFC 中常用宏的含义,参考:http://blog.csdn.net/enochshen/archive/2005/02/19/294164.aspx
看候捷《深入浅出MFC》