欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

簡(jiǎn)述c++ 發(fā)展史

 更新時(shí)間:2020年08月25日 10:16:36   作者:Dabelv  
這篇文章主要介紹了c++ 發(fā)展的過(guò)程,幫助大家更好的了解和學(xué)習(xí)c++,感興趣的朋友可以了解下

C++是一門(mén)以C為基礎(chǔ)發(fā)展而來(lái)的一門(mén)面向?qū)ο蟮母呒?jí)程序設(shè)計(jì)語(yǔ)言,從1983年由Bjarne Stroustrup教授在貝爾實(shí)驗(yàn)室創(chuàng)立開(kāi)始至今,已有30多個(gè)年頭。C++從最初的C with class,經(jīng)歷了從C++98、C++ 03、C++ 11、C++ 14再到C++17多次標(biāo)準(zhǔn)化改造,功能得到了極大的豐富,已經(jīng)演變?yōu)橐婚T(mén)集面向過(guò)程、面向?qū)ο蟆⒑瘮?shù)式、泛型和元編程等多種編程范式的復(fù)雜編程語(yǔ)言,入門(mén)具有一定的難度。由于C++過(guò)于復(fù)雜,并且經(jīng)歷了長(zhǎng)時(shí)間的發(fā)展演變,目前對(duì)于C++標(biāo)準(zhǔn)支持的較好主要有GNU C++和Visual C++,嚴(yán)格來(lái)說(shuō),目前還沒(méi)有一個(gè)完全支持ISO C++的版本。

1954年,John Backus發(fā)明了世界上第一種計(jì)算機(jī)高級(jí)語(yǔ)言Fortran,為之后出現(xiàn)的高級(jí)編程語(yǔ)言奠定了基礎(chǔ)。1970年,AT&T的Bell實(shí)驗(yàn)室的 Ken Thompson,以BCPL語(yǔ)言為基礎(chǔ),設(shè)計(jì)出簡(jiǎn)單且接近硬件的B語(yǔ)言(取BCPL的首字母),并且他用B語(yǔ)言寫(xiě)了第一個(gè)Unix操作系統(tǒng)。到了1972年,Bell實(shí)驗(yàn)室的Dennis Ritchie和Ken Thompson共同發(fā)明了C語(yǔ)言,并使用C重寫(xiě)Unix。1979年,Bjame Stroustrup到了Bell實(shí)驗(yàn)室,開(kāi)始從事將C改良為帶類(lèi)的C(C with Classes)的工作,1983年該語(yǔ)言被正式命名為C++,主要意圖是表明C++是C的增強(qiáng)版,1985年發(fā)布了第一個(gè)C++版本。

第一個(gè)版本的C++,因其面向?qū)ο蟮乃枷胧沟镁幊套兊煤?jiǎn)單,并且又保持了C語(yǔ)言的運(yùn)行效率,在推出的一段時(shí)間內(nèi),得到了快速的發(fā)展,占據(jù)了編程語(yǔ)言界的半壁江山。從1985年到1998年,C++從最初的C with Classes新增了很多其他的特性,比如異常處理、模板、標(biāo)準(zhǔn)模板庫(kù)(STL)、運(yùn)行時(shí)異常處理(RTTI)與名字空間(Namespace)等。1998年,C++標(biāo)準(zhǔn)委員會(huì)統(tǒng)籌C++的所有特性,發(fā)布了第一個(gè)C++國(guó)際標(biāo)準(zhǔn)C++98。從1998年到2003年,是C++標(biāo)準(zhǔn)從C++98到C++03的迭代期,期間C++擴(kuò)增了很多額外的特性,比如以Boost MPL(Boost Metaprogramming Library)與Loki等為代表的模板元編程庫(kù)的出現(xiàn),讓開(kāi)發(fā)者更加便捷的使用C++在編譯期的執(zhí)行能力,即通過(guò)代碼編譯獲得計(jì)算結(jié)果,學(xué)術(shù)性的稱(chēng)為模板元編程。到了2003年,C++標(biāo)準(zhǔn)委員會(huì)總結(jié)最新技術(shù)并發(fā)布了C++03標(biāo)準(zhǔn)。從2003年到2011年,也就是從C++03到C++11,期間C++引入了對(duì)象移動(dòng)、右值引用、lamba表達(dá)式(函數(shù)式編程)、編譯時(shí)類(lèi)型識(shí)別(auto)、別名模板以及很多新型關(guān)鍵詞(如nullptr、decltype、constexpr)等現(xiàn)代編程語(yǔ)言常具備的能力,讓C++與時(shí)俱進(jìn),開(kāi)發(fā)效率得到了很大的提升。這些新的特性隨著C++11標(biāo)準(zhǔn)的發(fā)布而被正式確立下來(lái)。近年來(lái),C++標(biāo)準(zhǔn)的變更周期縮短,由C++11到C++14以及最近的C++17都只用了3年的時(shí)間。C++14引入了二進(jìn)制文字常量、將類(lèi)型推導(dǎo)從Lambda函數(shù)擴(kuò)展到所有函數(shù)、變量模板以及數(shù)字分位符等。C++14 是對(duì) C++11的重要補(bǔ)充和優(yōu)化,是C++發(fā)展歷程中的一個(gè)小型版本,雖然新增的內(nèi)容較少,但是仍然為用戶(hù)“帶來(lái)了極大的方便”,為實(shí)現(xiàn)使C++“對(duì)新手更為友好”這一目標(biāo)作出努力。到了2017年,C++迎來(lái)了C++17標(biāo)準(zhǔn)。此次對(duì)C++的改進(jìn)和擴(kuò)增,讓C++變得更加容易接受和便于使用了。C++17引入了許多新的特性,比如類(lèi)模板參數(shù)推導(dǎo)、UTF-8文字常量、fold表達(dá)式、新類(lèi)型以及新的庫(kù)函數(shù)等。

C++仍在不斷的發(fā)展,下一個(gè)版本將是C++20,C++歷史上的標(biāo)準(zhǔn)變更如下。

年份

C++ 標(biāo)準(zhǔn)名稱(chēng)

非正式名稱(chēng)

1998

ISO/IEC 14882:1998

C++98

2003

ISO/IEC 14882:2003

C++03

2011

ISO/IEC 14882:2011

C++11

2014

ISO/IEC 14882:2014

C++14

2017

ISO/IEC 14882:2017

C++17

2020

Yet to be determined

C++20

語(yǔ)言的發(fā)展是一個(gè)逐步遞進(jìn)的過(guò)程,C語(yǔ)言也不例外,C語(yǔ)言也有自己的標(biāo)準(zhǔn)。C語(yǔ)言從1972誕生以來(lái),先后經(jīng)歷了K&R C、ANSI C、C89、C99和最新的C11標(biāo)準(zhǔn)的變更,其特性不斷豐富,功能不斷強(qiáng)大。語(yǔ)言的發(fā)展也是相互促進(jìn)和交融吸收的,C++是直接從C語(yǔ)言發(fā)展過(guò)來(lái)的,而C語(yǔ)言是從B語(yǔ)言發(fā)展過(guò)來(lái)的,B語(yǔ)言則是從BCPL發(fā)展而來(lái),BCPL(Basic CPL)則從CPL發(fā)展而來(lái),CPL則從ALGOL60演變而來(lái)。每一門(mén)新語(yǔ)言的誕生以及后續(xù)的演變和發(fā)展,都站在了其他語(yǔ)言的肩膀之上,取其精華,棄其糟粕,讓語(yǔ)言變得更加的強(qiáng)大。

以上就是簡(jiǎn)述c++ 發(fā)展史的詳細(xì)內(nèi)容,更多關(guān)于c++ 發(fā)展史的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • C++中類(lèi)的構(gòu)造函數(shù)初始值列表解讀

    C++中類(lèi)的構(gòu)造函數(shù)初始值列表解讀

    這篇文章主要介紹了C++中類(lèi)的構(gòu)造函數(shù)初始值列表,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • 二叉樹(shù)中葉子節(jié)點(diǎn)的統(tǒng)計(jì)和樹(shù)高問(wèn)題

    二叉樹(shù)中葉子節(jié)點(diǎn)的統(tǒng)計(jì)和樹(shù)高問(wèn)題

    今天小編就為大家分享一篇關(guān)于二叉樹(shù)中葉子節(jié)點(diǎn)的統(tǒng)計(jì)和樹(shù)高問(wèn)題,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-03-03
  • 解析wprintf 中使用%I64d格式化輸出LONGLONG的詳細(xì)介紹

    解析wprintf 中使用%I64d格式化輸出LONGLONG的詳細(xì)介紹

    本篇文章是對(duì)wprintf 中使用%I64d格式化輸出LONGLONG進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • vc控制臺(tái)程序關(guān)閉事件時(shí)的處理方式及注意點(diǎn)詳解

    vc控制臺(tái)程序關(guān)閉事件時(shí)的處理方式及注意點(diǎn)詳解

    在本篇文章里小編給大家整理的是一篇關(guān)于vc控制臺(tái)程序關(guān)閉事件時(shí)的正確處理方式的相關(guān)知識(shí)點(diǎn)內(nèi)容,對(duì)此有需求的朋友們可以參閱下。
    2021-12-12
  • C++庫(kù)std::flush的具體使用

    C++庫(kù)std::flush的具體使用

    std::flush是C++標(biāo)準(zhǔn)庫(kù)中的一個(gè)操作符,用于刷新輸出流,本文主要介紹了C++庫(kù)std::flush的具體使用,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-02-02
  • C++面向行輸入之get()與getline()實(shí)例詳解

    C++面向行輸入之get()與getline()實(shí)例詳解

    在c++里當(dāng)我們輸入一個(gè)字符串時(shí)習(xí)慣用cin,但是cin只能讀取一段不含空格的字符串,如果我們需要讀取一段包含空格的字符串時(shí),就需要用到getline()或get(),下面這篇文章主要給大家介紹了關(guān)于C++面向行輸入之get()與getline()的相關(guān)資料,需要的朋友可以參考下
    2021-10-10
  • C語(yǔ)言簡(jiǎn)易實(shí)現(xiàn)掃雷小游戲

    C語(yǔ)言簡(jiǎn)易實(shí)現(xiàn)掃雷小游戲

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言簡(jiǎn)易實(shí)現(xiàn)掃雷小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • Microsoft?Visual?C++進(jìn)行調(diào)試的方法實(shí)現(xiàn)

    Microsoft?Visual?C++進(jìn)行調(diào)試的方法實(shí)現(xiàn)

    VS功能極其強(qiáng)大,使用極其便利,本文主要介紹了Microsoft?Visual?C++進(jìn)行調(diào)試的方法實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-06-06
  • 深入理解C++11:探索lambda函數(shù)的奧秘

    深入理解C++11:探索lambda函數(shù)的奧秘

    聚焦于C++11,讓我們一起探索lambda函數(shù)的奧秘,本指南將帶您深入了解這個(gè)強(qiáng)大的編程工具,讓您在編程世界中如虎添翼,無(wú)論您是初學(xué)者還是有經(jīng)驗(yàn)的開(kāi)發(fā)者,本指南都將為您帶來(lái)全新的視角和實(shí)用的技巧,需要的朋友可以參考下
    2024-01-01
  • C++中內(nèi)存分區(qū)及其作用分析

    C++中內(nèi)存分區(qū)及其作用分析

    C++內(nèi)存分區(qū)包括棧區(qū)、堆區(qū)、全局靜態(tài)區(qū)、常量區(qū),各自負(fù)責(zé)不同的數(shù)據(jù)存儲(chǔ)和回收,棧區(qū)主要用于存放函數(shù)局部變量和參數(shù),堆區(qū)用于動(dòng)態(tài)分配內(nèi)存,全局靜態(tài)區(qū)用于存放全局靜態(tài)變量和靜態(tài)成員變量,常量區(qū)用于存放常量和字符串常量
    2023-04-04

最新評(píng)論