關(guān)于字符串指針變量中存入的是,字符串指針這個問題很多朋友還不知道,今天小六來為大家解答以上的問題,現(xiàn)在讓我們一起來看看吧!
1、使用const的好處在于它允許指定一種語意上的約束——某種對象不能被修改——編譯器具體來實(shí)施這種約束。
2、通過const,你可以通知編譯器和其他程序員某個值要保持不變。
3、只要是這種情況,你就要明確地使用const ,因?yàn)檫@樣做就可以借助編譯器的幫助確保這種約束不被破壞。
4、const關(guān)鍵字實(shí)在是神通廣大。
5、在類的外面,它可以用于全局或名字空間常量,以及靜態(tài)對象(某一文件或程序塊范圍內(nèi)的局部對象)。
6、在類的內(nèi)部,它可以用于靜態(tài)和非靜態(tài)成員。
7、對指針來說,可以指定指針本身為const,也可以指定指針?biāo)傅臄?shù)據(jù)為const,或二者同時指定為const,還有,兩者都不指定為const:char *p = "hello"; // 非const指針, // 非const數(shù)據(jù)const char *p = "hello"; // 非const指針, // const數(shù)據(jù)char * const p = "hello"; // const指針, // 非const數(shù)據(jù)const char * const p = "hello"; // const指針, // const數(shù)據(jù)語法并非看起來那么變化多端。
8、一般來說,你可以在頭腦里畫一條垂直線穿過指針聲明中的星號(*)位置,如果const出現(xiàn)在線的左邊,指針指向的數(shù)據(jù)為常量;如果const出現(xiàn)在線的右邊,指針本身為常量;如果const在線的兩邊都出現(xiàn),二者都是常量。
9、在指針?biāo)笧槌A康那闆r下,有些程序員喜歡把const放在類型名之前,有些程序員則喜歡把const放在類型名之后、星號之前。
10、所以,下面的函數(shù)取的是同種參數(shù)類型:class widget { ... };void f1(const widget *pw); // f1取的是指向 // widget常量對象的指針void f2(widget const *pw); // 同f2因?yàn)閮煞N表示形式在實(shí)際代碼中都存在,所以要使自己對這兩種形式都習(xí)慣。
11、const的一些強(qiáng)大的功能基于它在函數(shù)聲明中的應(yīng)用。
12、在一個函數(shù)聲明中,const可以指的是函數(shù)的返回值,或某個參數(shù);對于成員函數(shù),還可以指的是整個函數(shù)。
本文分享完畢,希望對大家有所幫助。
標(biāo)簽:
免責(zé)聲明:本文由用戶上傳,如有侵權(quán)請聯(lián)系刪除!