前處理器
前處理器是編譯器的重要組成部分。
它編輯原始碼,削減一些位元,改變其他部分,並新增其他東西。
在原始檔中,我們可以包含前處理器指令。這些指令告訴前處理器執行特定操作。指令以新行上的#開頭。例:
#define ZERO 0
你將遇到的第一個前處理器指令可能是
#include <something>
指示。它的作用是將所有 something
並將其插入到指令所在的檔案中。在世界你好程式與行開始
#include <iostream>
此行新增了允許你使用標準輸入和輸出的函式和物件。
C 語言也使用前處理器,沒有與 C++語言一樣多的標頭檔案 ,但在 C++中,你可以使用所有 C 標頭檔案。
下一個重要指令可能是
#define something something_else
指示。這告訴前處理器,當它沿著檔案傳遞時,它應該用 something_else
替換每次出現的 something
。它也可以使功能類似,但可能算作高階 C++。
something_else
不是必需的,但是如果你將 something
定義為無,那麼在前處理器指令之外,所有出現的 something
都將消失。
這實際上很有用,因為 #if
,#else
和 #ifdef
指令。這些格式如下:
#if something==true
//code
#else
//more code
#endif
#ifdef thing_that_you_want_to_know_if_is_defined
//code
#endif
這些指令插入 true 位中的程式碼,並刪除 false 位。這可以用於包含僅包含在某些作業系統上的程式碼,而無需重寫整個程式碼。