C 定義在頭檔中的放置:這是常見的做法嗎?
在 C 程式設計領域,類別的放置聲明和定義引發了爭論。傳統上,規範是將這些方面分別分成包含文件和 *.cpp 文件。然而,一位同事聲稱,目前的最佳實踐要求在頭文件中包含定義。
為了評估這種所謂的新習慣用法的流行程度,讓我們檢查一下C 開發中的廣泛使用模式:
傳統方法:分離聲明和定義
無數的C 開發者都遵循傳統的方法樣式,涉及在包含文件(.h) 中聲明類並在.cpp 檔案中實現它們的定義。這種做法類似於 Modula-2 和 Ada 中規範和正文文件的分離。
優點:
僅標頭定義:替代方案
某些情況可能會證明將定義放在頭檔中是合理的,特別是為了增強編譯器優化(例如內聯)。然而,採用這種方法也有缺點:
何時僅標頭定義是合適的
僅標頭定義真正有利的唯一場景是在使用模板時。現代 C 庫經常廣泛使用模板,需要僅頭文件定義。
結論:
不支持您的同事聲稱所有 C 聲明都應在頭文件中定義的說法按照慣例。雖然僅標題定義有其利基應用,但分離聲明和定義的既定方法仍然是廣泛接受的規範。
以上是C 類別定義應該放在頭檔中嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!