當前位置:編程學習大全網 - 編程語言 - c++11什麽時候有的

c++11什麽時候有的

c++11

C++11標準是 ISO/IEC 14882:2011 - Information technology -- Programming languages -- C++ 的簡稱 。

C++11標準由國際標準化組織(ISO)和國際電工委員會(IEC)旗下的C++標準委員會(ISO/IEC JTC1/SC22/WG21)於2011年8月12日公布 ,並於2011年9月出版。2012年2月28日的國際標準草案(N3376)是最接近於C++11標準的草案(僅編輯上的修正)。此次標準為C++98發布後13年來第壹次重大修正。

簡介

C++11標準為C++編程語言的第三個官方標準,正式名叫ISO/IEC 14882:2011 - Information technology -- Programming languages -- C++ 。[1]?在正式標準發布前,原名C++0x。它將取代C++標準第二版ISO/IEC 14882:2003 - Programming languages -- C++ 成為C++語言新標準。

C++11包含了核心語言的新機能,並且拓展C++標準程序庫,並且加入了大部分的C++ Technical Report 1程序庫(數學上的特殊函數除外)。C++ 標準委員會計劃在2010年8月之前完成對最終委員會草案的投票,以及於2011年3月3召開的標準會議完成國際標準的最終草案。最終於2011年8月12日公布,並於2011年9月出版。2012年2月28日的國際標準草案(N3376)是最接近於現行標準的草案(編輯上的修正)。此次標準為13年第壹次重大修正。

ISO將在2014年和2017年發布C++的後續版本[2]?。

版本變更

1.對C++核心語言的擴充

2.核心語言運行期的強化(右值引用和 move 語義;泛化的常數表達式;對POD定義的修正)

3.核心語言建構期表現的加強(外部模板)

4.核心語言使用性的加強(初始化列表;統壹的初始化;類型推導[auto關鍵字];以範圍為基礎的 for 循環;Lambda函數與表示法;另壹種的函數語法;對象構建的改良;顯式虛函數重載;空指針;強類型枚舉;角括號;顯式類型轉換;模板的別名;無限制的unions)

5.核心語言能力的提升(變長參數模板;新的字符串字面值;用戶自定義的字面值;多任務存儲器模型;thread-local的存儲期限;使用或禁用對象的默認函數;long long int 類型;靜態assertion;允許sizeof運算符作用在類型的數據成員上,無需明確的對象;)

6.C++標準程序庫的變更(標準庫組件的升級;線程支持;多元組類型;散列表;正則表達式;通用智能指針;可擴展的隨機數功能;包裝引用;多態函數對象包裝器;用於元編程的類型屬性;用於計算函數對象返回類型的統壹方法)

現狀

每個標準的發布都需要壹段時間的普及。包括技術圖書,編譯器支持。C++11標準發布後,美國已經更新了大部分著名C++圖書,以支持最新的C++11標準,例如:《C++ Primer (Fifth Edition)》、《C++ Primer Plus (Sixth Edition)》、《The C++ Programming Language (4th Edition)》等等。這幾本書都已經有了中文翻譯版,分別名叫《C++ Primer 中文版(第五版)》、《C++ Primer Plus 中文版(第六版)》、《C++程序設計語言(第四版)》。各大主流編譯器產商也逐步添加了對C++11語法的支持,例如VS2012、g++、clang等都在很大程度上支持C++11標準。圖為迄今支持情況。

  • 上一篇:silverlight和flash的區別
  • 下一篇:婚禮主持人演講稿(精選5篇)
  • copyright 2024編程學習大全網