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

簡述c++ 發(fā)展史

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

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

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

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

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

年份

C++ 標準名稱

非正式名稱

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

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

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

相關文章

  • C++中類的構造函數(shù)初始值列表解讀

    C++中類的構造函數(shù)初始值列表解讀

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

    二叉樹中葉子節(jié)點的統(tǒng)計和樹高問題

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

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

    本篇文章是對wprintf 中使用%I64d格式化輸出LONGLONG進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • vc控制臺程序關閉事件時的處理方式及注意點詳解

    vc控制臺程序關閉事件時的處理方式及注意點詳解

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

    C++庫std::flush的具體使用

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

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

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

    C語言簡易實現(xiàn)掃雷小游戲

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

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

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

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

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

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

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

最新評論