一本書,定義一門語言
1985 年 10 月 14 日,Bjarne Stroustrup 出版《The C++ Programming Language》,是第一本描述 C++ 的書。Stroustrup 正是這門語言的設計者,自 1979 年起在 AT&T 貝爾實驗室研究部門開發 C++,想在 C 語言之上加入類別等抽象工具,同時不犧牲效率。據 Wired,直到 1998 年 ISO 標準出台之前,這本書一直是 C++ 事實上的參考標準。
Stroustrup 在 2010 年接受 Wired 訪問時說,C++ 最初是為自己和同事而做:C 對他們要處理的設計工作太原始,但當時的電腦又小又慢,「1 MHz 和 1 MB 已是奢侈」,所以額外開銷要減到邏輯上必要的程度。他又說,1979 至 1991 年間,C++ 用戶群每 7.5 個月就翻一倍。
從貝爾實驗室走到 ISO
C++ 其後成為最多人使用的程式語言之一,遊戲、瀏覽器、資料庫和嵌入式系統都大量採用。Stroustrup 曾經笑說,如果當年有點市場觸覺,每部電腦、幾乎每件電子產品都應該貼上「C++ Inside」標籤。
1998 年,C++ 成為 ISO 國際標準,2011 年起大約每三年更新一次。ISO C++ 委員會在 2026 年 3 月於英國倫敦 Croydon 的會議完成 C++26 的技術工作。委員 Herb Sutter 形容這是 C++11 以來最有吸引力的版本,新增反射(reflection)和契約(contracts)等功能。
四十年後的新壓力
C++ 現時面對的最大挑戰是記憶體安全。美國白宮國家網絡總監辦公室在 2024 年 2 月發表報告,呼籲軟件開發者改用記憶體安全的程式語言,C 和 C++ 被歸入風險較高的一類。
Stroustrup 的回應是「profiles」:由編譯器按一套規則禁止不安全的寫法,讓舊程式碼可以逐步收緊,而不必整套改寫成另一種語言。不過這套方案沒有趕及寫入 C++26,Stroustrup 的型別安全 profile 提案和相關框架,目標已改為下一版 C++29。
來源
- Wired: Oct. 14, 1985: C++ Adds to Programming (2010-10-14)
- Herb Sutter: C++26 is done! Trip report: March 2026 ISO C++ standards meeting (2026-03-29)
- The Register: Contracts are in C++26 despite disagreement over their value (2026-03-31)
- White House ONCD: Back to the Building Blocks press release (2024-02-26)
- Bjarne Stroustrup: P3984R0 type-safety profile (2026-01-28)
- Whole Tomato: C++26 memory safety, what ships for existing code (2026-07-30)




No comments yet
提交留言即表示你已閱讀我們的私隱政策。