Const指的是一個編譯時的常量。
關鍵字const使得代碼可以確定一個變量是否可以被修改。
使用了const後,可以防止對變量或者指針的修改;更重要的是,const的引用可以防止對所引用的對象的修改。
一般來說,在C語言中,對於一些常量的定義,我習慣性的使用define,而在C++中則最好改為使用const。
對於嵌入式程序而言,const的使用則是相當的微妙的,被const修飾後,其變量是存放在ROM中的,這一點很重要。
關於Const的指針的使用,文字解說沒有意義,直接參見下面的代碼及注釋:
#include// const // - a compile time constraint that an object can not be modified int main() { const int i = 1; int a = 0; const int *p1 = &i; ///< data is const ,but pointer is not int* const p2 = &a; ///< pointer p2 itself is const ,but the data p2 point to is not const //int* const p3 = &i; ///< illegal , cannot convert from 'const int *' to 'int *const ' int const* p4 = p1; ///< if const is on the left of *,data is const ///< if cosnt is on the right of *,pointer is const const int* const p5 = &i; ///