C語言中const應注意的一些地方

Const我們經常要用到,但有時不注意就會導致程序異常,而你還不知道怎麼回事,一些是在用const要注意的:


1. 函數返回值爲const時,返回的東西賦給一個類型相同的標示後其不能爲左值;


2. 用const定義的int可用來開闢數組,但const定義的常量數組中的元素,不能用來定義數組。


3. const int *i; int const *i; int * const i; 前兩個功能相同,說明I所指向的內容不變;最後一 個說明指針指向的地址不變,但內容可變。


4. 類中的const成員函數,定義爲在原型後加const。常量函數不能修改類中的任何屬性。但有兩種方法可 以修改。


1) {(yourclass *)this->member = values;}


2) 將一個成員定義成mutable即可被常量函數修改。


5. 類中的常量const 類型的,不能在類中被用來定義數組。而enum {ONE=100; TWO=2};定義的ONE、TWO 卻可以。通常的enum定義的置分配問題:enum A{ L=9, Z};此時Z的值爲10。

http://it.icxo.com/htmlnews/2004/09/29/385369.htm

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章