对VC++的OO思考

1. MFC借助C++的优势为Windows开发开辟了一片新天地,同时也借助 ApplicationWizzard使开发者摆脱离了那些每次都必写基本代码
2. 借助ClassWizard和消息映射使开发者摆脱了定义消息处理时那种混乱和冗长的代码段。
3. 更令人兴奋的是利用C++的封装功能使开发者摆脱Windows中各种句柄的困扰,只需要面对C++中的对象,这样一来使开发更接近开发语言而远离系统。(但我个人认为了解系统原理对开发很有帮助)。正因为MFC是建立在C++的基础上,所以我强调C/C++语言基础对开发的重要性:
1)利用C++的封装性开发者可以更容易理解和操作各种窗口对象;
2)利用C++的派生性开发者可以减少开发自定义窗口的时间和创造出可重用的代码;
3)利用虚拟性可以在必要时更好的控制窗口的活动。
4)而且C++本身所具备的超越C语言的特性都可以使开发者编写出更易用,更灵活的代码。

参考(内含消息映射和学习方法总结):
http://www.cnblogs.com/bingcaihuang/archive/2010/12/02/1894062.html

总结一下:就是类对象代替句柄进行各种操作,方便管理,还能被继承/覆盖/复用,就这么点事。在读Delphi源码的时候多次发现,通过Delphi对象管理窗口要比通过句柄管理方便的多,句柄算什么,不过是Delphi对象诸多属性之一罢了。而且我还发现,有时候需要通过句柄来找到对象的情况,这样才能方便操作和充分管理。

再再再总结一下:类对象十分强大,几乎随心所欲、无所不能,句柄只是其中一个属性,用来管理窗口罢了。

时间: 2024-10-07 01:31:59

对VC++的OO思考的相关文章

什么值得买:一家论坛式导购网站的自我修养

什么值得买 的用户把这个网站亲切称为"色魔张大妈"(SMZDM演化而来),虽然这个昵称有些恶搞的成分,但这是一家我印象中这个时代为数不多的"正常"公司.它没有颠覆什么,但重新定义了什么是"值",并且改变了一大批人的消费习惯. 在电商领域,什么值得买从创立初始就在节奏与气质上特立独行,包括其至今都没有涉及"交易"环节.电商行业里,如果一家公司不擅长赶政策热点.赶创业故事热潮,很难在资本市场为自己谈到一个好价钱,没钱烧就没有资源支

关于过拟合、局部最小值、以及Poor Generalization的思考

Poor Generalization 这可能是实际中遇到的最多问题. 比如FC网络为什么效果比CNN差那么多啊,是不是陷入局部最小值啊?是不是过拟合啊?是不是欠拟合啊? 在操场跑步的时候,又从SVM角度思考了一下,我认为Poor Generalization属于过拟合范畴. 与我的论文 [深度神经网络在面部情感分析系统中的应用与改良] 的观点一致. SVM ImageNet 2012上出现了一个经典虐杀场景.见[知乎专栏] 里面有一段这么说道: 当时,大多数的研究小组还都在用传统compute

OO (VS) SO

继续上一篇博文<SOA--面向服务的体系架构>,这次主要向大家阐述面向对象和面向服务的关系,请大家多提宝贵意见! OO(ObjectOriented,面向对象),用一张图表示OO进行系统开发的特性: SO(Service-Oriented,面向服务),用一张图表示SO系统开发与运行的特性: 通过这两图的对比,如果抽象一点来说的话,这两张图其实都是一样的,运用同一种思想:通过某种形式,关联颗粒.如果用微观和宏观来说,OO是微观的,SO是宏观的.不追求细节的话,可以说,两者都是抽象出具体形式(对象

VC维

有关于VC维可以在很多机器学习的理论中见到,它是一个重要的概念.在读<神经网络原理>的时候对一个实例不是很明白,通过这段时间观看斯坦福的机器学习公开课及相关补充材料,又参考了一些网络上的资料(主要是这篇,不过个人感觉仍然没有抓住重点),重新思考了一下,终于理解了这个定义所要传达的思想. 先要介绍打散(shatter)的概念:对于一个给定集合S={x1, ... ,xd},如果一个假设类H能够实现集合S中所有元素的任意一种标记方式,则称H能够打散S.例如下图S={x1,x2, x3},它们的取值

《你必须知道的.NET》读书笔记三:体验OO之美

一.依赖也是哲学 (1)本质诠释:"不要调用我们,我们会调用你" (2)依赖和耦合: ①无依赖,无耦合: ②单向依赖,耦合度不高: ③双向依赖,耦合度较高: (3)设计的目标:高内聚,低耦合. ①低耦合:实现最简单的依赖关系,尽可能地减少类与类.模块与模块.层次与层次.系统与系统之间的联系: ②高内聚:一方面代表了职责的统一管理,一方面又代表了关系的有效隔离: (4)控制反转(IoC):代码的控制器交由系统控制而不是在代码内部,消除组件或模块间的直接依赖: (5)依赖注入(DI): ①

IDG资本全球拼图:近10年揽26家独角兽,最敢出手VC再造&quot;VC+&quot;

IDG资本全球拼图:近10年揽26家独角兽,最敢出手VC再造"VC+" 2017-04-01 15:33 两天前,IDG资本合伙人过以宏提出的"VC+",又有了新的内涵--全球范围内更广泛的布局. 3月29日,美国国际数据集团(以下简称IDG)收购案传来最新进展,中国财团全面收购IDG集团已完成交割. 据悉,此次收购分为两部分.其中,IDG资本携手光大控股.中国泛海.中银集团投资有限公司等收购IDG全球投资业务(IDG Ventures)的交易于2017年2月结束交

面向过程,面向对象,函数式对同一个问题的思考方式

我之所以对函数式代码感兴趣是因为函数式代码富有表现力,可以使用简短.紧凑的代码完成工作,同时能对特定的问题给出优雅的解决方案.现代的编程语言不约而同的朝着面向对象.函数式.动态.解释执行的方向发展,例如Ruby,Swift.而另一些语言则更加强调函数式编程,如F#,Scala,这种语言有着强大的类型推断系统,编写的代码洁程度则令人叹为观止. 在F#编写一个两个数相加的函数,在F# Interactive中输入: let add num1 num2=num1*num2;; F# Interacti

VC眼中的众筹平台:将改变VC募集基金方式,成为下一个纳斯达克市场

“一个好的投资平台可能会成为像纳斯达克一样的市场”,这是投资人给予众筹平台的未来憧憬. ”从长远的角度来说,众筹平台可能会改变VC募集基金的方式“,戈壁投资合伙人蒋涛说,“从二级市场看,不论是企业的IPO,还是基金的首次银行募集,我们觉得其实都是一个对公的众筹的本质,跟众筹是没有区别的.” 众筹平台,为什么会越来越火? 戈壁投资合伙人蒋涛认为以下三点是关键: 第一,互联网公司的普及让创业公司和潜在的投资人之间信息的更加透明. 第二,因为投资者越来越多元化,所以会要求有更多元化的投资渠道和产品.对

Verification Mind Games---how to think like a verifier像验证工程师一样思考

1. 有效的验证需要验证工程师使用不同于设计者的思维方式思考问题.具体来说,验证更加关心在严格遵循协议的基础上发现设计里面的bug,搜索corner cases,对设计的不一致要保持零容忍的态度. mindset:一套人们应该持有的确定的态度,有时候又被描述为心里惯性,群体思维,范式,在分析和决策过程中很难抵消mindset的影响. 举一个简单的例子,当你看到任何verification engineer的职位,你会发现这是一个关于语言,方法学,工具以及某种领域的知识集合. 很多有经验的工程师可