VC:语句含义
CRuntimeClass*ptrG=RUNTIME_CLASS(CRunThreadForGCode);AfxBeginThread(ptrG);请问这两个语句是啥意思...
CRuntimeClass* ptrG=RUNTIME_CLASS(CRunThreadForGCode);
AfxBeginThread(ptrG);
请问这两个语句是啥意思~~ 展开
AfxBeginThread(ptrG);
请问这两个语句是啥意思~~ 展开
展开全部
要完全理解的话,需要了解MFC运行时类型识别(IsKindof)。
RUNTTIME_CLASS是一个宏。所有在运行时可识别类型的类都有一个CRuntimeClass静态数据成员和函数,这些内容组成一张网。而CRuntimeClass* ptrG=RUNTIME_CLASS(CRunThreadForGCode);就是获取CRunThreadForGCode的对应CRuntimClass信息,
AfxBeginThread(ptrG);是创建线程对象,这个是UI线程的创建方式。
在AfxBeginThread(ptrG);里面会根据参数CRuntimClass信息,动态创建对应的线程对象。
具体的你可以查看RUNTIME_CLASS宏定义,以及CRunThreadForGCode里面是否有如上所说内容。注意:灵活的把宏全部替换就知道有CRuntimeClass成员了。
RUNTTIME_CLASS是一个宏。所有在运行时可识别类型的类都有一个CRuntimeClass静态数据成员和函数,这些内容组成一张网。而CRuntimeClass* ptrG=RUNTIME_CLASS(CRunThreadForGCode);就是获取CRunThreadForGCode的对应CRuntimClass信息,
AfxBeginThread(ptrG);是创建线程对象,这个是UI线程的创建方式。
在AfxBeginThread(ptrG);里面会根据参数CRuntimClass信息,动态创建对应的线程对象。
具体的你可以查看RUNTIME_CLASS宏定义,以及CRunThreadForGCode里面是否有如上所说内容。注意:灵活的把宏全部替换就知道有CRuntimeClass成员了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询