const修飾類物件 物件指標 物件引用

2021-06-27 15:54:56 字數 578 閱讀 9842

const修飾的物件,該物件的任何非const成員函式都不能被呼叫,因為任何非const成員函式會有修改

成員變數的企圖。

class aaa ;

}; const aaa *a = new aaa;

a->func1();//錯誤

編譯會報:

error c2662: 「aaa::func1」: 不能將「this」指標從「const aaa」轉

為「aaa &」

a->func2();//正確

作為引數呼叫時的情況:

aaa a;

string str = "aaa";

a.func3(str);

str.at(0)//正確

str.clear();//錯誤

error c2662: 「std::basic_string<_elem,_traits,_alloc>::clear」: 不能將「this」指

針從「const std::string」轉換為「std::basic_string<_elem,_traits,_alloc> 

參考:

指標物件(類和物件實驗二)

第一行輸入需要n個測試物件 每行依次輸入各物件的屬性 輸出排好序後的物件姓名屬性,每行乙個 2tom 男 2012222222 計算機學院 13333333333 john 男 2013333333 計算機學院 12444444444 john tom my code include using n...

指向const物件指標 const指標

指向const物件指標 const指標 2010 07 22 16 40 1.指向const物件的指標 指向const物件的指標是乙個指標,但是不能通過它修改它指向的物件的值.宣告方法 const int p 指向const物件的指標在初始化後不允許對它指向的物件的值進行修改.const int i...

指向const物件指標 const指標

參見 110頁 陣列和指標 一節 指向const物件指標關鍵理解 const double cptr 指向const物件指標關鍵理解 可以指向非const物件,但不能通過該指標修改所指向物件的值,const指標關鍵理解 int const curerr errnumb const指標關鍵理解 cur...