1. 程式人生 > >C++和C語言的區別(四)——使用C++中特性替換巨集定義

C++和C語言的區別(四)——使用C++中特性替換巨集定義

C語言的巨集有一個重要特性那就是在預處理階段就進行字元替換。

用C++的特性替換C語言中的巨集主要有三種方式:①typedef、②inline函式、③const修飾符

而這三種方式都有和巨集最大不同的區別就是,他們都是在編譯期進行的。

(1)typedef:C語言與C++兩者所共有的,但是與巨集仍有區別,區別如下:

①typedef 建立的符號名只受限於型別,不能用於值。

②typedef 由編譯器解釋,#define由前處理器處理。

③作用範圍不同

(2)inline 函式:可以檢視我的部落格C++和C語言的區別(一)

(3)const修飾符:可以檢視我的部落格C++和C語言的區別(三)

(4)typedef和#define對於const的區別