#ifndef的使用方法詳解
#define x
...
#endif
#ifndef x
#define x
程序段1//如果x沒(méi)有被宏定義過(guò),定義x,并編譯程序段 1
...
#endif
程序段2//如果x已經(jīng)定義過(guò)了則編譯程序段2的語(yǔ)句,“忽視”程序段 1。
條件指示符#ifndef 的最主要目的是防止頭文件的重復(fù)包含和編譯。
條件編譯當(dāng)然也可以用條件語(yǔ)句來(lái)實(shí)現(xiàn)。 但是用條件語(yǔ)句將會(huì)對(duì)整個(gè)源程序進(jìn)行編譯,生成的目標(biāo)代碼程序很長(zhǎng),而采用條件編譯,則根據(jù)條件只編譯其中的程序段1或程序段2,生成的目標(biāo)程序較短。如果條件選擇的程序段很長(zhǎng),采用條件編譯的方法是十分必要的。
評(píng)論