[COM/ATL]组件、对象、MFC、ATL的区别
組件(Component)和對象(Object)之間的區(qū)別
先明確組件(Component)和對象(Object)之間的區(qū)別。組件是一個可重用的模塊,它是由一?組處理過程、數(shù)據(jù)封裝和用戶接口組成的業(yè)務(wù)對象(Rules?Object)。組件看起來像對象,但不符合對象的學(xué)術(shù)定義。它們的主要區(qū)別是:?
?
?
MFC和ATL之間的不同
目前MFC和ATL代表了兩種框架,分別面向不同類型的基于Windows的開發(fā)。
?
- MFC代表了創(chuàng)建獨立的Windows應(yīng)用的一種簡單、一致的方法;ATL提供了一種框架來實現(xiàn)創(chuàng)建COM客戶機和服務(wù)器所必須的樣板文件代碼。
- ATL則不同于MFC,它完全面向COM組件,其技術(shù)路線也不同于MFC,MFC使用的是C++中的繼承、封裝、嵌套等常規(guī)技術(shù),而ATL使用了C++中模板、多繼承等高級技術(shù),甚至還用到了STL。所以學(xué)習(xí)和使用ATL要求我們必須熟悉這些C++高級特性。
?
另一方面,ATL結(jié)構(gòu)完全針對COM中的諸多規(guī)范,這就要求使用人員必須非常了解COM規(guī)范,才有可能真正把ATL用好。
什么是ATL
ATL是(動態(tài)模板庫)ActiveX?Template?Library?的縮寫,它是一套C++模板庫。基本目標就是使COM應(yīng)用開發(fā)盡可能地自動化。
ATL是ActiveX?Template?Library?的縮寫,它是一套C++模板庫。使用ATL能夠快速地開發(fā)出高效、簡潔的代碼(Effective?and?Slim?code),同時對COM組件的開發(fā)提供最大限度的代碼自動生成以及可視化支持。為了方便使用,從Microsoft?Visual?C++?5.0版本開始,Microsoft把ATL集成到Visual?C++開發(fā)環(huán)境中。1998年9月推出的Visual?Studio?6.0?集成了ATL?3.0版本。目前,ATL已經(jīng)成為Microsoft標準開發(fā)工具中的一個重要成員,日益受到C++開發(fā)人員的重視。?
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/jiangu66/p/3202825.html
總結(jié)
以上是生活随笔為你收集整理的[COM/ATL]组件、对象、MFC、ATL的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android - AsyncTask你
- 下一篇: kettle变量(param命名参数)