标 题: [合集] 问一个VC应用程序框架问题
发信站: 水木社区 (Sun May 15 17:00:53 2005), 站内
☆─────────────────────────────────────☆
Rinler (Rinler) 于 (Fri May 13 22:18:16 2005) 提到:
vc应用程序中,自动生成的代码有很多函数直接以类名作为参数,不知道怎么理解,难道是
隐藏定义的变量?
如CWinApp的InitInstance()函数中有
CMultiDocTemplate* pDocTemplate;
pDocTemplate = new CMultiDocTemplate(
IDR_BMPTYPE,
RUNTIME_CLASS(CBitsDoc),
RUNTIME_CLASS(CChildFrame), // custom MDI child frame
RUNTIME_CLASS(CBitsView));
AddDocTemplate(pDocTemplate);
用以创建Doc和View类的对象,其中RUNTIME_CLASS函数用了CBitsDoc作为参数,但
CBitsDoc既不是字符串,也没看到在哪定义为变量,在c++语法里岂不是非法的?
还是应用程序框架隐含定义了这种变量,还是符号常量之类的东西?
虚心求教!谢谢!
☆─────────────────────────────────────☆
soundbox (音箱|夏天挡不住增重的脚步) 于 (Fri May 13 22:24:10 2005) 提到:
类名吧..
☆─────────────────────────────────────☆
Rinler (Rinler) 于 (Fri May 13 22:28:54 2005) 提到:
c++中类名可以作参数的吗?我土了
☆─────────────────────────────────────☆
N95 (兴,百姓苦;亡,百姓苦) 于 (Fri May 13 23:54:17 2005) 提到:
当然了,特别在doc/view结构中,很多都用类名做参数
☆─────────────────────────────────────☆
grapl (grapl) 于 (Sat May 14 01:05:13 2005) 提到:
RUNTIME_CLASS 是宏,不是函数
☆─────────────────────────────────────☆
superwt2001 (逆风飞扬) 于 (Sat May 14 11:48:08 2005) 提到:
对
是宏
☆─────────────────────────────────────☆
Rinler (Rinler) 于 (Sat May 14 16:17:24 2005) 提到:
谢谢,是宏,呵呵