自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

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

開發(fā) 后端
想要充分的掌握C++語言,那么就要對C++中的結(jié)構(gòu)、語句、變量、函數(shù)、預(yù)處理指令、輸入和輸出等內(nèi)容進(jìn)行了解掌握。

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

STL模板庫之外,還有一個(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è)接口類和控件類中派生出來的,類的聲明語句中隨處可見模板的身影——這就是Microsoft為我們設(shè)計(jì)的別具一格的ATL風(fēng)格的代碼了。

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

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

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

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

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

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

責(zé)任編輯:chenqingxiang 來源: 計(jì)世網(wǎng)
相關(guān)推薦

2010-01-25 15:09:17

C++語言

2015-08-31 09:27:21

語言界面UI

2015-08-03 09:36:01

賽迪翻譯

2018-07-09 08:59:43

開發(fā)者技能C++

2010-01-15 17:38:37

C++語言

2023-07-18 18:10:04

2012-11-01 13:41:25

編程語言BasicPerl

2024-02-27 09:39:07

C語言cJSON開發(fā)

2010-01-15 14:46:20

C++語言

2009-12-15 19:18:39

Ruby源代碼

2017-03-10 09:09:41

C語言體驗(yàn)

2013-03-12 14:07:06

Java編程

2018-03-12 13:32:02

編程語言程序員語言

2010-11-04 10:55:24

編程語言

2010-01-22 15:30:36

C++語言

2010-01-22 10:26:40

C++語言

2014-01-13 10:36:53

C++錯(cuò)誤

2020-07-10 10:48:51

編程語言JavaPython

2010-01-21 15:27:38

C++語言

2012-03-14 11:46:30

ibmdw
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)