MFC运行时动态类实现

MFC运行时动态类实现

  • MD DocUmEnT: 4/2/2016 12:28:57 AM by Jimbowhy

技术背景

MFC是微软为数不多,公开源代码发布的一个软件框架,深入的技术分析可以参考侯俊杰先生的《深入浅出MFC》,资料确实非常赞,作者真可谓知无言,言无不尽。虽然现在有许多关于MFC过时与否的讨论,个人觉得没有必要参与其中,所有事物其实都会有过时的那天,人也是如此。对于没有掌握的一种技术,那就是新的,并非过时,过时只是对于前面那批会MFC却又不用MFC做事的人来说的。我并没有完全掌握MFC,但我也没有必要完全去掌握MFC,只是喜欢MFC,喜欢学习其中的实现技术。MFC并不一定能减轻程序开发的负担,相反它可能会很大程序上增加程序人员的工作量,如果不适当地应用这种技术。

运行时类型信息 RTTI,Run-Time Type Information 和动态类型 Dynmic Class 作为MFC六大核心机制其中之二,联系非常紧密,就像消息映射 Message Mapping 和命令传递 Command Routing一样结合紧密。其余两项核心技术,MFC初始化与持久化 Persistence 则相对独立。而消息映射机制和动态类型则是我认为最有趣的两大技术,C++标准也有RTTI的实现,但MFC比它更早。

实现代码

要掌握动态类型光靠文字描述效果不怎样,其实写下代码最有说服力,从代码的角度理解动态类型的工作原理是十分贴切的。实现完整的动态类型可以粗分为四个步骤,首先是创建动态类型基础,它可以记录系统所有动态类型信息,其作用相当于数据库,代码实现上它就

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值