您好,登錄后才能下訂單哦!
const 放在*前 是對變量(指針指向的空間 *p)進(jìn)行修飾:指針指向的變量為const,即不能通過該指針來修改變量
const放在*后 是對指針本身的的修飾 :指針本身的指向不能改變,只能指向這個變量
const int p; // p 為常量,初始化后不可更改 const int* p; // *p 為常量,不能通過*p改變它指向的內(nèi)容 int const* p; // *p 為常量,同上 int* const p; // p 為常量,初始化后不能再指向其它內(nèi)容
在C++中可以在的成員函數(shù)可以通過const來修飾。此時const修飾的是this指針變量本身,所以意味著當(dāng)前成員函數(shù)不可以修改當(dāng)前對象的成員函數(shù).
class C1 { public: int m_i; int m_j; const void m_method(int i,int j){ m_i = i + 1;// error 不能修改this指針指向的屬性 } void const m_method1(int i,int j){ m_i = i + 1;// error 不能修改this指針指向的屬性 } void m_method3(int i,int j) const{ m_i = i + 1;// error 不能修改this指針指向的屬性 } protected: private: };
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。