遇到的第一个大麻烦:

第一个坎 遇到的第一个大麻烦:    

 第三章   frame3  的两个宏    

     " DECLARE_DYNAMIC / IMPLEMENT_DYNAMIC“

#define DECLARE_DYNAMIC(class_name) /

public: /

static CRuntimeClass class##class_name; /

virtual CRuntimeClass* GetRuntimeClass() const;

 

  #define _IMPLEMENT_RUNTIMECLASS(class_name, base_class_name,wSchema,pfnNew) /

static char _lpsz##class_name[] = #class_name; /

CRuntimeClass class_name::class##class_name = { /_lpsz##class_name, sizeof(class_name), wSchema, pfnNew, /

RUNTIME_CLASS(base_class_name), NULL }; /

static AFX_CLASSINIT _init_##class_name(&class_name::class##class_name); /

CRuntimeClass* class_name::GetRuntimeClass() const /

{ return &class_name::class##class_name; } /

 百度上  费了两个小时终于解决问题

  "/"的意思相当与换行  "/"以后还是定义的一部分

 #  将一个“变量”名转化成字符串  

在百度搜索的关键字“带参数的宏”“宏 ‘/’”

预处理谭浩强的书  讲的比较清楚的但是没讲

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值