日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

c++編程思想怎么樣 c++入門書籍推薦

C++編程語言走到今天已經(jīng)有將近40年的歷史了,那么我們今天就來看看這個發(fā)展歷程,看我們從一代又一代的C++標準之中能發(fā)現(xiàn)什么秘密吧!我們走進C++的世界······
C++的歷史可以追溯到1979年,當時Bjarne Stroustrup(譯者注:C++之父)正在準備他的博士畢業(yè)論文,他有機會使用一種叫做Simula 的語言 。顧名思義,Simula語言的主要作用是仿真 。Simula 67是Simula語言的一種變種,被公認是首款支持面向?qū)ο蟮恼Z言 。Stroustrup發(fā)現(xiàn)面向?qū)ο蟮乃枷雽τ谲浖_發(fā)非常有用,但是因Simula語言執(zhí)行效率低,其實用性不強 。
不久之后,Stroustrup開始著手“C with Classes”的研發(fā)工作,“C with Classes”表明這種新語言是在C基礎上研發(fā)的,是C語言的超集 。C語言以其高可移植性而廣受好評,且程序執(zhí)行速度以及底層函數(shù)的性能不受程序移植的影響,Stroustrup要做的就是將面向?qū)ο蟮乃枷胍隒語言 。新語言的初始版本除了包括C語言的基本特征之外,還具備類、簡單繼承、內(nèi)聯(lián)機制、函數(shù)默認參數(shù)以及強類型檢查等特性 。
Bjarne Stroustrup的第一款“C with classes”編譯器叫Cfront,這個名字源自一個叫做Cpre的C編譯器 。Cfront的機理是把“C with classes”的代碼翻譯成原生C代碼 。頗為有趣的一點是Cfront源碼大部分是由“C with Classes”編寫,這使得Cfront成為了一種自足執(zhí)行的編譯器(可以編譯自身源碼的編譯器) 。由于很難整合C++的異常機制,Cfront在1993年退出了歷史的舞臺,但是它對以后C++編譯器以及Unix操作系統(tǒng)的實現(xiàn)都產(chǎn)生了深遠的影響 。
1983年,“C with Classes”語言更名為C++ 。C語言中“++”運算子的作用是對一個變量進行遞增操作,由此我們多少可以知曉Stroustrup對這種新語言的定位 。這個時期,許多重要的特性被加入,其中包括虛函數(shù)、函數(shù)重載、引用機制(符號為&)、const關鍵字以及雙斜線的單行注釋(從BCPL語言引入) 。
1985年,Stroustrup的C++參考手冊《C++ Programming Language》出版,同年,C++的商業(yè)版本問世 。由于當時C++并沒有正式的語言規(guī)范,因此《C++ Programming Language》成了業(yè)界的重要參考 。1989年,C++再次版本更新,這次更新引入了多重繼承、保護成員以及靜態(tài)成員等語言特性 。
1990年,《Annotated C++ Reference Manual》發(fā)布,同年,Borland公司的商業(yè)版Turbo C++編譯器問世 。Turbo C++附帶了大量函數(shù)庫,這一舉措對C++開發(fā)產(chǎn)生了極為深遠的影響 。雖然Turbo C++上一個穩(wěn)定的版本發(fā)布于2006年,但當前該編譯器仍被廣泛使用 。
1998年,C++標準委員會發(fā)布了C++語言的第一個國際標準—ISO/IEC 14882:1998,該標準即為大名鼎鼎的C++98 。C++98的提出,《The Annotated C++ Reference Manual》功不可沒 。同時,1979年開始研發(fā)的標準模板庫(Standard Template Library,STL)也被納入了該版標準中 。2003年,標準委員會針對98版本中存在的諸多問題進行了修訂,修訂后發(fā)布了C++03 。
2005年,C++標準委員會發(fā)布了一份技術報告(Technical Report,TR1)詳細說明了計劃引入C++的新特性 。這個新標準被非正式地命名為C++0x,因為其預計會在本世紀第一個十年的某個時間發(fā)布 。諷刺的是,直到2011年年中該標準才面世,相應的技術文檔也隨之出爐,一些編譯器廠商也開始試驗性地支持這些新特性 。
2011年中,新的C++標準(C++11)面世 。Boost庫對該版本影響很大,一些新的模塊甚至直接衍生于Boost中相應的模塊 。一些新的語言特性,包括正則表達式(正則表達式詳情)、完備的隨機數(shù)生成函數(shù)庫、新的時間相關函數(shù),原子操作支持、標準線程庫(2011之前,C和C++語言均缺少對線程的支持)、一種能夠和某些語言中foreach語句達到相同效果的新的for語法、auto關鍵字、新的容器類、更好的union支持、數(shù)組初始化列表的支持以及變參模板的支持等等 。

推薦閱讀