<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>

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


      共有6022人關(guān)注過本帖樹形打印

    主題:一種全新的語言——C++語言

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


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

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

    STL模板庫之外,還有一個與模板風(fēng)格相關(guān)的例子。下面的代碼片斷取自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為我們設(shè)計的別具一格的ATL風(fēng)格的代碼了。

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

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

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

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

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

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


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

    返回版面帖子列表

    一種全新的語言——C++語言








    簽名
    主站蜘蛛池模板: 岛国大片免费观看| 爱情岛论坛免费观看大全在线| 在线小视频国产| 久久国产精品成人片免费| 欧美日韩**字幕一区| 又黄又爽的视频在线观看| 韩国公和熄三级在线观看| 国内精品福利视频| 中文字幕日本在线观看| 日韩欧美黄色片| 亚洲第一区se| 男女一边摸一边做爽视频| 国产亚洲视频在线| 6080一级毛片| 多女多p多杂交视频在线观看| 久久久亚洲欧洲日产国码二区| 杨幂13分20秒未删减bt| 你懂的在线视频| 精品国产一区二区三区不卡 | 亚洲欧美日韩图片| 直接观看黄网站免费视频| 国产国产成年年人免费看片| 91精品久久久久久久久中文字幕| 太粗太长岳受不了了| 久久久久777777人人人视频| 日韩亚洲专区在线电影| 亚洲成a人片在线观看播放| 污污的网站免费在线观看| 又黄又爽一线毛片免费观看 | 亚洲人成人一区二区三区| 残虐极限扩宫俱乐部| 十六以下岁女子毛片免费| 美美女高清毛片视频免费观看| 国产成人精品久久一区二区三区 | 国产精品美女自在线观看免费| 一区二区三区视频免费观看| 成人毛片一区二区| 久久精品国产亚洲AV高清热| 最新国产乱人伦偷精品免费网站| 亚洲精品tv久久久久久久久 | 国色天香中文字幕视频|