在使用#define時,比如#define max 10000,如果出現錯誤,編譯器並不會提示max,因為在預處理階段已經把max替換成了10000,因此編譯器會莫名其妙的提示10000這個數字出現了錯誤,從而不利於程式debug,但是如果使用const int max=10000,編譯器就會準確的提示max有錯誤,從而可以輕易地定位。
對於乙個字元指標的定義char * p;加上const關鍵字時無非有三種方法,即把const放在前中後三個位置。那麼他們之間有什麼區別呢?
1 const char * p1;//表示p1指向了的字串不可更改
2 char const * p2;//同上
3 char * const p3;//表示p2指標的指向不可更改
注意1和2的意義完全相同,只是不同的程式設計師具有不同的編碼習慣,我們要熟悉所有的這三種用法,下面給出一段**,來說明他們三個的區別:
1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 78 using namespace std;
9 10 int main(int argc, char *argv)
11 22 }
23 const int & operator (int n) const
24
27 int & operator (int n)
28
31 };
32 33 int main(int argc, char *argv)
34
C 中的 const 詳解
在使用 define時,比如 define max 10000,如果出現錯誤,編譯器並不會提示max,因為在預處理階段已經把max替換成了10000,因此編譯器會莫名其妙的提示10000這個數字出現了錯誤,從而不利於程式debug,但是如果使用const int max 10000,編譯器就會準確的...
c 中const的用法詳解
const是用於保護程式的健壯性,減少程式隱患。const的用法比較複雜,總結起來又分為以下兩種 1 在定義變數時使用 a const int a 100 最簡單的用法,說明變數a是乙個常變數 b int const b 100 與a功能相同 c const int a b 指向常數的指標,即指標本...
c 中const的使用詳解
const 是c 中常用的型別修飾符,常型別是指使用型別修飾符const說明的型別,常型別的變數或物件的值是不能被更新的。1 定義常量 1 const修飾變數,以下兩種定義形式在本質上是一樣的。它的含義是 const修飾的型別為type的變數value是不可變的。type const valuena...