日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

对于C++的思考

發布時間:2023/12/13 c/c++ 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 对于C++的思考 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

本文是Bjarne Stroustrup的HOPL4論文 筆記及拓展(目錄) 的起始篇。

C++的理念

C++被設計出來到底是為了回答什么樣的問題呢?

  • 如何直接操縱硬件?
  • 同時支持高效,高級的抽象?
  • C++在1980年代僅僅是一個基于C和Simula語言功能的組合,經過多年的發展,C++與其他編程語言的決定性區別有兩方面:

  • 語言結構到硬件設備的直接映射
  • 零開銷抽象
  • 關于零開銷抽象是這樣被描述的:

    • 你不用的東西,你就不需要付出代價(也稱為“沒有分布式脂肪”)
    • 你使用的東西,你手動寫代碼也不會更好

    抽象在代碼中表示為函數,類,模板,概念和別名。

    C++主要是一種工業語言,一種構建系統的工具。對于用戶來說,C++不僅僅是一種由規范定義的語言,它是由許多部分組成的工具集的一部分:

    • 語言
    • 標準庫
    • 龐大的 常常是舊的 代碼庫
    • 工具 包括其他語言
    • 教學和培訓
    • 社區支持

    對于簡單的事情簡單做,并確保復雜的事情并非不可能或沒有必要地難。

    年表

    • 1979年:工作始于“帶類的C”,它變成了C++,擁有了第一個非研究性用戶。
      – 語言:class,構造函數/析構函數,public/private,簡單繼承,函數參數類型檢查
      – 庫:task(協程和仿真),用宏參數化定義的vector
    • 1985年:C++的首次商業發行
      – 語言:virtual函數,運算符重載,引用,常量
      – 庫:complex算法,流輸入輸出
    • 1989-91年:ANSI和ISO標準化開始
      – 語言:抽象類,多重繼承,異常,模板
      – 庫:輸入輸出流
    • 1998年:C++98,第一個ISOC++標準
      – 語言:namespace,具名類型轉換(非C風格的轉換),bool,dynamic_cast
      – 庫:STL(容器和算法),string,bitset
    • 2011年:C++11
      – 語言:內存模型,auto,范圍for,constexpr,lambda表達式,用戶定義字面量…
      – 庫:thread和鎖,future,unique_ptr,shared_ptr,array,時間和時鐘,隨機數,無序容器(哈希表)…
    • 2014年:C++14
      – 語言:泛型lambda表達式,constexpr函數中的局部變量,數字分隔符…
      – 庫:用戶自定義字面量…
    • 2017年:C++17
      – 語言:結構化綁定,變量模板,模板參數化的構造函數推導…
      – 庫:文件系統,scoped_lock,shared_mutex(讀寫鎖),any,variant,optional,string_view…
    • 2020年:C++20
      – 語言:concept,module,協程,三路比較,改進對編譯期計算的支持…
      – 庫:概念,范圍,日期和時區,span,格式,改進的并發和并行執行…

    總結

    以上是生活随笔為你收集整理的对于C++的思考的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。