久久中文视频-久久中文网-久久中文亚洲国产-久久中文字幕久久久久-亚洲狠狠成人综合网-亚洲狠狠婷婷综合久久久久


曙海教育集團(tuán)論壇開(kāi)發(fā)語(yǔ)言培訓(xùn)專區(qū)C++語(yǔ)言開(kāi)發(fā) → 一種全新的語(yǔ)言——C++語(yǔ)言


  共有6698人關(guān)注過(guò)本帖樹(shù)形打印

主題:一種全新的語(yǔ)言——C++語(yǔ)言

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個(gè)性首頁(yè) | 博客 | 信息 | 搜索 | 郵箱 | 主頁(yè) | UC


加好友 發(fā)短信
等級(jí):青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊(cè):2010-11-12 11:08:23
一種全新的語(yǔ)言——C++語(yǔ)言  發(fā)帖心情 Post By:2010-12-10 14:08:31

在C++語(yǔ)言里面出現(xiàn)過(guò)這樣的情況:知道了語(yǔ)言實(shí)現(xiàn)的底層機(jī)制,卻不知道語(yǔ)言特性本身的意義在什么地方,這些內(nèi)容都是一些門戶網(wǎng)站和技術(shù)論壇找到的,中間可能有不少錯(cuò)誤是沒(méi)有挑出的,歡迎大家指正。

STL模板庫(kù)之外,還有一個(gè)與模板風(fēng)格相關(guān)的例子。下面的代碼片斷取自Visual C++自動(dòng)生成的ATL控件工程

  1. class ATL_NO_VTABLE CMyATLObj :  
  2.     public IMyATLObj,  
  3.     public IpersistStreamInitImpl  
  4.         <CMyATLObj>,  
  5.     public IOleControlImpl<CMyATLObj>,  
  6.     public IOleObjectImpl<CMyATLObj>,  
  7.     public IoleInPlaceActiveObjectImpl  
  8.         <CMyATLObj>,  
  9.     public IViewObjectExImpl<CMyATLObj>,  
  10.     public IoleInPlaceObjectWindowlessImpl  
  11.         <CMyATLObj>,  
  12.     public IPersistStorageImpl<CMyATLObj>,  
  13.     public IspecifyPropertyPagesImpl  
  14.         <CMyATLObj>,  
  15.     public IQuickActivateImpl<CMyATLObj>,  
  16.     public IDataObjectImpl<CMyATLObj>,  
  17.     public IProvideClassInfo2Impl  
  18.         <&__uuidof(CMyATLObj), NULL>,  
  19.     public CComControl<CMyATLObj> 

注意控件類CMyATLObj的代碼,CMyATLObj類居然是從N個(gè)接口類和控件類中派生出來(lái)的,類的聲明語(yǔ)句中隨處可見(jiàn)模板的身影——這就是Microsoft為我們?cè)O(shè)計(jì)的別具一格的ATL風(fēng)格的代碼了。

之所以要不惜代價(jià)地大量使用模板、多重繼承等語(yǔ)言特性,這主要為了適應(yīng)COM、OLE、ActiveX等在架構(gòu)上本來(lái)就相對(duì)復(fù)雜的技術(shù)體系。但這樣一來(lái),使用ATL的代碼在所有C++代碼中,就擁有了一副異乎尋常的長(zhǎng)相了:到處都是尖括號(hào),到處都是以“I”打頭的標(biāo)識(shí)符,甚至還有多重尖括號(hào)的嵌套……

如果要求一個(gè)剛學(xué)會(huì)C++語(yǔ)言的程序員立刻讀懂一大段ATL代碼,我想,用不了幾分鐘,他就會(huì)被代碼中那些晦澀、離奇的語(yǔ)言風(fēng)格折磨得精神崩潰了。C++語(yǔ)言的標(biāo)準(zhǔn)化進(jìn)程遠(yuǎn)遠(yuǎn)落后于語(yǔ)言本身的普及速度。1990年以后,ANSI/ISO的C++標(biāo)準(zhǔn)化委員會(huì)才將包括Stroustru。

在內(nèi)的大批專家以及包括Apple、Borland、DEC、HP、IBM、Microsoft、Sun、Unisys在內(nèi)的知名公司召集在一起,像所有國(guó)家的議會(huì)或人民代表大會(huì)一樣通過(guò)沒(méi)完沒(méi)了的會(huì)議、討論和投票制定C++的國(guó)際標(biāo)準(zhǔn)。

標(biāo)準(zhǔn)直到1998年9月才正式發(fā)布。在國(guó)際標(biāo)準(zhǔn)化組織的檔案庫(kù)里,C++標(biāo)準(zhǔn)的代號(hào)是ISO/IEC 14882:1998。Stroustrup建議我們把標(biāo)準(zhǔn)C++當(dāng)作一種全新的語(yǔ)言來(lái)學(xué)習(xí)[3]。這一說(shuō)法顯然是基于這樣一個(gè)事實(shí)。

標(biāo)準(zhǔn)C++語(yǔ)言已經(jīng)擁有了一種穩(wěn)定的、可以推廣的語(yǔ)言風(fēng)格,即,通過(guò)對(duì)STL等既有技術(shù)的肯定,ANSI/ISO委員會(huì)在1998年的標(biāo)準(zhǔn)中正式認(rèn)可了包括模板、容器類、I/O流庫(kù)、異常處理等典型語(yǔ)言特征的現(xiàn)代C++風(fēng)格。

風(fēng)格的穩(wěn)定意味著語(yǔ)言本身的進(jìn)步和成熟,也意味著程序員們對(duì)C++語(yǔ)言的認(rèn)識(shí)必須上升到一個(gè)新的層次——那些至今還在編寫(xiě)僅由類和C語(yǔ)言庫(kù)函數(shù)組成的C++代碼的程序員,一定會(huì)成為Stroustrup及其同仁們的取笑對(duì)象的


支持(0中立(0反對(duì)(0單帖管理 | 引用 | 回復(fù) 回到頂部

返回版面帖子列表

一種全新的語(yǔ)言——C++語(yǔ)言








簽名
主站蜘蛛池模板: 亚洲三区视频 | 国产成人在线网址 | 亚洲国产欧美在线人成精品一区二区 | 亚洲精品一区二区三区在线观看 | 中文字幕一区二区三区有限公司 | 最新最好看免费毛片基地 | 久久国产精品1区2区3区网页 | 欧美在线视频看看 | 欧美一级欧美三级在线观看 | 精品国产成人在线 | 一级视频在线播放 | 免费国内精品久久久久影院 | 亚洲区精选网址 | 日本免费在线一区 | 精品欧美激情在线看 | 亚洲精品一区二区三区第四页 | 中文欧美一级强 | 国产欧美日韩一区二区三区在线 | 欧美黄视频在线观看 | 欧美一级片在线视频 | 国产成人99精品免费观看 | 久久精品国产欧美成人 | 精品久久成人 | 80日本xxxxxxxxx| 久久久99精品免费观看精品 | 成人国产精品免费软件 | 狠狠狠狠狠 | 亚洲国产欧美目韩成人综合 | 一级毛片在线不卡直接观看 | 毛片久久 | 美国一级毛片oo | 精品a在线观看 | 亚洲男人的天堂网 | 毛片免费全部播放一级 | 成人观看免费大片在线观看 | 青青草国产一区二区三区 | a黄网站| 日本在线视频播放 | 国产精品自拍一区 | 欧美成年黄网站色视频 | 欧美精品束缚一区二区三区 |