C++ 中 .cc 和 .cpp 副檔名之間的區別

Shikha Chaudhary 2023年1月30日 2022年7月18日
  1. .cpp 副檔名
  2. .cc 副檔名
  3. C++ 中 .cc.cpp 副檔名之間的相似之處
  4. C++ 中 .cc.cpp 副檔名之間的區別
  5. まとめ
C++ 中 .cc 和 .cpp 副檔名之間的區別

如果你曾經在 Linux 和 Windows 等不同系統上使用過 C++,那麼你一定遇到過 .cc.cpp 副檔名。在網際網路上,你會發現許多訊息來源說這些副檔名之間沒有區別,對此確實存在很多混淆。

在本文中,我們將討論這些 C++ 副檔名的細微差別以及它們之間的區別。但在我們開始比較這兩個副檔名之前,讓我們首先收集有關這兩個副檔名基礎的資訊。

.cpp 副檔名

副檔名為 .cpp 的檔案是 C++ 原始碼檔案。這些檔案也稱為實現檔案,因為它們具有標頭檔案中宣告的方法的定義。

該檔案旨在將 C++ 專案的介面與實現分開。這樣,成員函式的所有宣告都在標頭檔案中進行,並且相同的詳細資訊儲存在 .cpp 檔案中。

我們可以將 .cpp 檔案用作編寫 C++ 應用程式的簡單檔案或用作類實現的檔案。在物件導向程式設計的情況下,.cpp 檔案用於類定義。

為此,類的所有資料成員和函式都在標頭檔案中宣告。該檔案引用檔案開頭的 include 語句中的標頭檔案。

.cpp 檔案與 Windows 作業系統相容;使用一些外部程式,它們也適用於 Linux 和 Mac 作業系統。

.cc 副檔名

副檔名為 .cc 的檔案是 C++ 原始碼檔案。這可以包含單個程式以及編譯成機器程式碼的函式。

這些檔案與 Mac、Linux 和 Windows 作業系統相容,並受到這些作業系統上的各種程式的支援。

有關副檔名的完整列表,請參閱 this 文件。

C++ 中 .cc.cpp 副檔名之間的相似之處

.cc.cpp 副檔名並不相同,但它們是相關的,因為它們都用作 C++ 副檔名。對於編譯器,兩者之間沒有區別。

C++ 編譯器可以自動處理所有 C++ 擴充套件而不會造成任何麻煩。GNU GCC 編譯器將所有這些副檔名視為 C++ 檔案:.cc.c .c++.cp.cxx.cpp.CPP,並始終使用 C++ 編譯來編譯它們,而我們不必使用 GCC 呼叫它。

雖然 .cpp 是推薦的 C++ 副檔名,但它更多的是你決定使用的個人偏好。它也可能取決於專案的整個團隊,幾乎不會產生任何差異。

如果專案與開源相關,最好使用社群中常見的 .cpp。這就是這兩個副檔名是如何相關的。

現在讓我們深入探討期待已久的討論:.cc.cpp 副檔名之間的區別。

C++ 中 .cc.cpp 副檔名之間的區別

.cc.cpp 副檔名之間的差異可以根據各種因素進行總結。其中包括工作環境、作業系統、舊約定以及這些副檔名的來源。

以下是這兩個副檔名之間的所有區別點:

  1. 不同的環境支援不同的副檔名。 .cc 副檔名主要由 Unix、GNU C++、Clang、Microsoft Visual C++ 和 Metrowerks CodeWarrior 支援。

    另一方面,GNU C++、Clang、Digital Mars、Borland C++、Watcom、Microsoft Visual C++ 和 Metrowerks CodeWarrior 支援 .cpp 副檔名。這種相容性區別有助於跨平臺識別並使程式碼具有可移植性。

  2. 作業系統在這裡也扮演著重要的角色。對於 Unix 和 Linux,約定是 .cc,而對於 Windows,它是 .cpp

    你將看到 .cc 副檔名更常用於 Linux/Unix 系統,而 .cpp 檔案主要用於 Windows,因為它會導致 .C 副檔名出現問題。另一方面,對於 macOS,Xcode 首選 .cpp 副檔名。

  3. 這兩種檔案型別的起源也有一些差異。最初,.cpp 被用作 C++ 檔案的約定,因為它代表 C plus plus,用作 C++ 副檔名聽起來合乎邏輯。

    由於當時 cpp 已經作為 C 前處理器存在,所以有可能將 .cpp 檔案與 .i 檔案混淆(cpp 呼叫的擴充套件)。所以最初,副檔名改為 .cc

    隨著時間的推移,由於同義詞的縮寫,只有 .cpp 變得更受歡迎。

  4. 毫無疑問,與 Linux 和 Unix 相比,Windows 是迄今為止最常用和流行的作業系統。由於 Windows 在 Linux 和 Unix 系統上的普及,.cpp 副檔名更常用。

  5. 另一個可以區分這兩個副檔名的外部因素是程式碼庫的使用。例如,Google 使用 .cc 副檔名,而 LLVM libc++ 使用 .cpp 副檔名。

まとめ

在本文中,我們瞭解了 .cc.cpp 副檔名如何用於不同平臺和作業系統(如 Unix、Mac 和 Windows)上的 C++ 檔案。我們還討論了這兩個副檔名的不同之處以及它們之間的關係。

同樣,完全由開發人員根據需要選擇任何副檔名。這就是本文的全部內容。