簡體   English   中英

C ++類中的標題和代碼

[英]Header and Code in C++ classes

我剛開始學習一些C ++教程,但是遇到了一些我似乎不太理解的東西。

在C ++中,似乎人們正在使用代碼文件和頭文件,對我而言,這似乎並不方便。 為什么我只想編寫一個簡單的getter方法就想在兩個文件之間交換。

是否認為在C ++中使用標頭的“正確”方式? 還是只是我選擇的教程使用了這個?

我想到了拆分代碼以使其看起來更干凈的想法,但是除此以外的其他功能是否有用?

提前致謝。

使用hpp(header)-和cpp(code)-文件有一些原因。 其中之一是:庫(dll文件或so​​-文件)不能像Java中的jar文件一樣“使用”。 如果編寫庫,則必須以hpp文件的形式提供類,方法等的聲明。

c ++中的頭文件可存儲大量信息,如果使用所創建的每個程序中的c ++中的每個“頭”文件來制作c ++,則例如當您隨后從iostream編寫函數時,程序將遍歷每個頭文件只是找到正確的頭文件。 因此,他們改為在c ++中創建了#inlcude函數,因此您可以指定函數的來源。

而且,當您創建程序時,可以創建自己的頭文件,因此可以更好地設置代碼。 然后不必導入一個主要源文件中的許多代碼行,而可以導入其他代碼。 例如,如果您要制作游戲,則一個動物文件的頭文件,而在該頭文件中,您有一個用於貓的類,一個用於狗的類。 擁有更干凈的代碼。

考慮使用您在其他文件中編寫的類。 如果您在單獨的文件中包含類定義,則可以通過在計划使用此代碼的位置包含頭文件來幫助編譯器弄清楚如何使用該類。

編譯器只需要知道您是否正確使用了類(在鏈接之前它並不關心如何運行它),因此,您需要給編譯器的是類(頭文件)的聲明,以進行編譯。錯誤檢查。 當您說"include" ,預處理器只是將頭文件的內容復制並粘貼到新文件中,以便新文件現在知道如何使用您編寫的類。

在C / C ++中,標頭用於在類之間共享類結構(除其他外)。

所以一個人可以使用

包括“ classFOO.h”

在classBAR.h(或classBAR.cpp)中使用classFOO。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM