c++類成員函式後邊加const是為什麼?
阿新 • • 發佈:2018-12-29
時間是讓人猝不及防的東西,晴是有風陰時有雨,爭不過朝夕,又念著往昔,偷走了青絲卻留住一個你
#include <iostream> #include <string> using namespace std; class Test { public: string get_name() const // 這個const通常會用在這個類方法函式不修改內容的情況下;如果這個const刪掉就會報錯 { return "哈哈哈"; }; private: }; void vvv(constTest &t) { //注意,這裡的const string data = t.get_name(); // 因為編譯時候,編譯器懷疑這個類方法函式會修改,const不變數嘛 // 所以這時候會報錯,如果在類成員函式get_name後邊加上const,編譯器就知道了,用途在這裡 cout << data << endl; }; int main() { Test t; vvv(t); // 這裡用的是淺拷貝 std::cout << "Hello, World!" << std::endl;return 0; }