标题:CRuntimeClass类中语法问题
取消只看楼主
bai_cai_101
Rank: 2
等 级:论坛游民
帖 子:3
专家分:10
注 册:2009-10-9
结帖率:100%
已结贴  问题点数:20 回复次数:0 
CRuntimeClass类中语法问题
以下为CRuntimeClass类在MSDN中的说明文件内容

CRuntimeClass
CRuntimeClass is a structure you can use to obtain information about an object or its base class at run time. The ability to determine the class of an object at run time is useful when extra type checking of function arguments is needed, or when you must write special-purpose code based on the class of an object. Each class derived from CObject is associated with a CRuntimeClass structure.

Syntax
struct CRuntimeClass
{
LPCSTR m_lpszClassName;
int m_nObjectSize;
UINT m_wSchema
CObject* (PASCAL* m_pfnCreateObject)( );
CRuntimeClass* (PASCAL* m_pfnGetBaseClass)( );
CRuntimeClass* m_pBaseClass;
CObject* CreateObject( );
BOOL IsDerivedFrom(const CRuntimeClass* pBaseClass) const;
};

在此类定义中有一个CObject* 类指针变量,但是我看不懂的是这个类指针变量后面的内容:(PASCAL* m_pfnCreateObject)( ); 这样的定义描述我在C++程序语言设计教程中找不到任何类似的说明,它在C++中是什么样的语法结构?它表示什么意思? 类似的如:CRuntimeClass* (PASCAL* m_pfnGetBaseClass)( );BOOL IsDerivedFrom(const CRuntimeClass* pBaseClass) const;
第一.CObject表示前面定义的类,CObject* 表示定义一个指向CObject类对象的指针,但后面的两个圆括号分别代表什么意义?m_pfnCreateObject是指什么? 最后一列中出现两个const表示什么意义?
     请哪位高手给予帮助,多谢了!




搜索更多相关主题的帖子: 语法 
2009-10-09 12:10



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-287948-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.081406 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved