- 相關(guān)推薦
C語(yǔ)言頭文件如何避免重復(fù)包含
一般情況下,我們都是把函數(shù)聲明、類定義、模板定義等寫到一個(gè)頭文件里,需要時(shí)將相應(yīng)的頭文件用#include包含到源文件(*.cpp文件)里來(lái)。但頭文件中又允許包含其它的頭文件,這樣就難免發(fā)生某個(gè)頭文件被重復(fù)地包含。大家知道C語(yǔ)言頭文件如何避免重復(fù)包含嗎?下面是小編為大家搜索整理的C語(yǔ)言頭文件如何避免重復(fù)包含,希望能給大家?guī)?lái)幫助!更多精彩內(nèi)容請(qǐng)及時(shí)關(guān)注我們應(yīng)屆畢業(yè)生考試網(wǎng)!
假定有以下幾個(gè)頭文件及其包含關(guān)系為:
File1.h,file2.h,file3.h,file4.h,file5.h,main.cpp
那么:file3.h包含file1.h,file2.h,file4.h包含file1.h,file2.h,file5.h包含file3.h,file4.h。如許就會(huì)導(dǎo)致在file5中對(duì)file1和file2的反復(fù)包含,編譯時(shí)就會(huì)報(bào)錯(cuò)。
解決方法:
1:應(yīng)用#ifndef
#define
#endif
即每個(gè)文件在定義時(shí)都寫成以下情勢(shì)(以file1.h為例):
#ifndefH_FILE1
#defineH_FILE1
#include
#include
…..
#endif
File3.h:#ifndefH_FILE3
#defineH_FILE3
#include
#include
#inlcude”file1.h”
#include”file2.h”
…..
#endif
方法二:
在每個(gè)文件的頭部定義:#pragmaonce(用于解釋本文件中的內(nèi)容只應(yīng)用一次)
例:fiel1.h:
#pragmaonce
#include
#include
…..
File3.h:
#pragmaonce
#include
#include
#include”file1.h”
…..
【C語(yǔ)言頭文件如何避免重復(fù)包含】相關(guān)文章:
C語(yǔ)言頭文件避免重復(fù)包含的方法技巧04-16
C語(yǔ)言頭文件封裝06-25
在excel2007中如何避免重復(fù)項(xiàng)07-09
如何學(xué)習(xí)c語(yǔ)言05-07
英語(yǔ)寫作避免重復(fù)的方法01-11
淺談如何學(xué)好C語(yǔ)言02-19
C語(yǔ)言如何調(diào)用硬件02-14