C++中RUNTIME_CLASS.AFX_CLASSINIT. _AFXDLL是什么?

来源:百度知道 编辑:UC知道 时间:2024/06/17 21:24:11
C++中RUNTIME_CLASS,AFX_CLASSINIT,_AFXDLL等一些以下划线开头的字段各是什么功能?

是 名字.
C, C++ 区分大小写. 名字可以大写.

例如:
struct AFX_CLASSINIT
{ AFX_CLASSINIT(CRuntimeClass* pNewClass); };
// AFX_CLASSINIT --英文意思 , AFX 类初始化.

#define RUNTIME_CLASS(class_name) \
(&class_name::class##class_name)
// 定义 宏 RUNTIME_CLASS(class_name) 为 ...

//宏定义, 如果定义了 _AFXDLL 则 ... 否则 ...
#ifdef _AFXDLL
CEmbeddedButActsLikePtr<CMapPtrToPtr> m_pmapSocketHandle;
CEmbeddedButActsLikePtr<CMapPtrToPtr> m_pmapDeadSockets;
CEmbeddedButActsLikePtr<CPtrList> m_plistSocketNotifications;
#else
CMapPtrToPtr* m_pmapSocketHandle;
CMapPtrToPtr* m_pmapDeadSockets;
CPtrList* m_plistSocketNotifications;
#endif