以文本方式查看主題

-  曙海教育集團論壇  (http://www.scb-ycwb.com/bbs/index.asp)
--  C++語言開發  (http://www.scb-ycwb.com/bbs/list.asp?boardid=63)
----  一種全新的語言——C++語言  (http://www.scb-ycwb.com/bbs/dispbbs.asp?boardid=63&id=2422)

--  作者:wangxinxin
--  發布時間:2010-12-10 14:08:31
--  一種全新的語言——C++語言

在C++語言里面出現過這樣的情況:知道了語言實現的底層機制,卻不知道語言特性本身的意義在什么地方,這些內容都是一些門戶網站和技術論壇找到的,中間可能有不少錯誤是沒有挑出的,歡迎大家指正。

STL模板庫之外,還有一個與模板風格相關的例子。下面的代碼片斷取自Visual C++自動生成的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個接口類和控件類中派生出來的,類的聲明語句中隨處可見模板的身影——這就是Microsoft為我們設計的別具一格的ATL風格的代碼了。

之所以要不惜代價地大量使用模板、多重繼承等語言特性,這主要為了適應COM、OLE、ActiveX等在架構上本來就相對復雜的技術體系。但這樣一來,使用ATL的代碼在所有C++代碼中,就擁有了一副異乎尋常的長相了:到處都是尖括號,到處都是以“I”打頭的標識符,甚至還有多重尖括號的嵌套……

如果要求一個剛學會C++語言的程序員立刻讀懂一大段ATL代碼,我想,用不了幾分鐘,他就會被代碼中那些晦澀、離奇的語言風格折磨得精神崩潰了。C++語言的標準化進程遠遠落后于語言本身的普及速度。1990年以后,ANSI/ISO的C++標準化委員會才將包括Stroustru。

在內的大批專家以及包括Apple、Borland、DEC、HP、IBM、Microsoft、Sun、Unisys在內的知名公司召集在一起,像所有國家的議會或人民代表大會一樣通過沒完沒了的會議、討論和投票制定C++的國際標準。

標準直到1998年9月才正式發布。在國際標準化組織的檔案庫里,C++標準的代號是ISO/IEC 14882:1998。Stroustrup建議我們把標準C++當作一種全新的語言來學習[3]。這一說法顯然是基于這樣一個事實。

標準C++語言已經擁有了一種穩定的、可以推廣的語言風格,即,通過對STL等既有技術的肯定,ANSI/ISO委員會在1998年的標準中正式認可了包括模板、容器類、I/O流庫、異常處理等典型語言特征的現代C++風格。

風格的穩定意味著語言本身的進步和成熟,也意味著程序員們對C++語言的認識必須上升到一個新的層次——那些至今還在編寫僅由類和C語言庫函數組成的C++代碼的程序員,一定會成為Stroustrup及其同仁們的取笑對象的


主站蜘蛛池模板: 精品人妻无码一区二区性色| 免费不卡的av| 伊人久久久久久久久久久久| 日韩免费高清一区二区| 青娱乐国产精品| 欧美特黄一级视频| 欧美一级性视频| 熟女av一区二区| 在线黄色av网站| 亚洲熟妇av乱码在线观看| 亚洲一二区视频| www.com.av| 国产又粗又长又大的视频| 久久精品一区二区三| 蜜臀aⅴ国产精品久久久国产老师| 欧美成人久久久免费播放| 青青操免费在线视频| 日日噜噜噜噜久久久精品毛片| 午夜不卡福利视频| 自拍一级黄色片| aaa一区二区三区| 国产精品国产精品国产| 精品无码一区二区三区的天堂| 欧美日韩在线国产| 日韩中文字幕高清| 中文字幕欧美色图| 成人av手机在线| 久久精品视频久久| 天天看片天天操| 一级黄色大片免费观看| 国产精品热久久| 欧美亚洲日本在线| 在线播放黄色av| 国产97免费视频| 免费黄色av片| 怡春院在线视频| 国产 日韩 欧美 精品| 久久精品国产亚洲av高清色欲 | 国产不卡av在线播放| 久久久久亚洲天堂| 无码人妻一区二区三区线|