iT邦幫忙

2025 iThome 鐵人賽

DAY 1
0

歷史

Bjarne Stroustrup 當初想要創造一種既能保持 C 語言效率,又能提供更高抽象層次的語言。

C++ 獨特處:

  • 記憶體控制權: Java 的垃圾回收或是Python 的自動記憶體管理,C++ 讓我們可以設計記憶體的分配與釋放。這在即時系統或記憶體受限的環境中十分重要。
  • 零開銷抽象:C++ 的物件導向特性在編譯時就被最佳化,不會造成執行時的額外負擔。讓開發者可以使用 class、template 等,但最終產生的機器碼效率仍然很高。
  • 多重程式設計範式:C++ 支援程序式、物件導向、泛型程式設計等,讓開發者可以根據問題選擇最適合的解法。

C++11 之後,加入了 smart pointer、auto 關鍵字、lambda 表達式等功能,讓程式碼更安全也更易讀,同時保持了原有的效能優勢。這也是為什麼它在需要高效能的領域中仍然不可替代。

價值

  • 人工智慧與科學計算
    • TensorFlow、PyTorch 的核心運算模組
    • 大規模模擬(computational physics、computational chemistry)
  • 金融工程
    • 高頻交易(HFT, High-Frequency Trading)
    • 低延遲網路與即時風險分析系統
  • 系統軟體與底層開發
    • 作業系統(Windows、Linux kernel 部分模組)
    • 瀏覽器(Chromium 中的核心模組)
  • 遊戲與圖形引擎
    • Unreal Engine、Unity(部分底層)
    • 即時渲染、物理引擎、遊戲 AI

總結

C++ 是 Bjarne Stroustrup 在 1980 年代創造的程式語言,目標是結合 C 語言的高效能與更高層次的抽象能力。它的三大特色包括:完全的記憶體控制權(不像 Java/Python 有自動記憶體管理)、零開銷抽象(物件導向功能不影響執行效率)、以及支援多種程式設計範式。C++11 後加入智慧指標、auto 關鍵字等現代功能,讓程式更安全易讀。正因為這些特性,C++ 至今仍是 AI 運算核心(TensorFlow、PyTorch)、高頻金融交易、系統軟體開發(Windows、Chrome)、以及遊戲引擎(Unreal Engine)等高效能領域的首選語言。


下一篇
[DAY2]Hello World!
系列文
C++入門即放棄3
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言