C++之父:比雅尼·斯特勞斯特魯普(Bjarne Stroustrup),同時也是《The C++ Programming Language》一書的作者。作者設計並實作這套語言,目的是解決將 UNIX 核心服務分發至多處理器、區域網叢集的需求。當時作者在開發事件驅動模擬程式時,發現 Simula 語言十分適合,但執行效能無法達到要求;而 C 語言執行效率高,卻缺乏完善的模組化機制與型別檢查能力。因此作者決定將 Simula 的類別機制導入 C 語言,帶類別的 C「C with Classes」就此誕生,也就是 C++ 的前身。
後續這套語言被運用於多個大型專案,證實其資源佔用低、執行效率佳,但當時仍缺少運算子多載、參考、虛函式、樣板、例外處理等眾多核心功能。
起初僅作內部使用,1983 年 7 月,C++ 首次走出實驗室,開放給外部單位使用。
++ 是 C 語言的遞增運算子,代表它是 C 語言的進化升級版本。
C++11 在研發階段的代號為 C++0x,本教學文件以 C++11 為基礎撰寫。
開發 C++ 最核心的初衷,是讓團隊同事無需再撰寫組合語言、純 C 或是當年流行的各類高階語言,降低開發高品質程式的門檻、提升程式開發體驗。
C++ 語言的演進,與標準函式庫核心元件的開發同步推進。
C++ 時間軸
1979:專案啟動,原名「C with Classes」,實作類別、建構/解構函式、基礎並行函式庫
1984:正式更名為 C++,新增虛函式、多載、參考、IO 串流函式庫
1985:第一款商用 C++ 正式發布
1998:第一版國際標準 C++98 正式定案
2002:新一代標準研發計畫啟動,代號 C++0x
2003:發布 C++98 勘誤版本;新增規則運算式、雜湊容器、智慧指標等函式庫元件
2009:C++0x 功能凍結,納入 Lambda、移動語意、多執行緒、統一初始化等現代語言特性
2011:新版標準正式定名 C++11,經 ISO 國際標準組織核准
2012:完整支援 C++11 的編譯器問世;同步展開 C++14、C++17 標準研發
C++ 之父
C++ 之父 比雅尼・斯特勞斯特魯普(Bjarne Stroustrup),生於 1955 年,2022 年正式從摩根士丹利全職崗位退休,但仍持續投入 C++ 相關研究工作。
