const string& get_name() const {return name;},必须这样
const型的成员函数表示这个this是const型指针,所以你无法修改他所指向的内容,lz应该知道const char*你是不能去给他做memcpy的吧,所以你这个成员函数返回name,本质上返回了const string&类型的变量。
但是你如果非要返回一个name的引用,而你又同时希望这个成员函数是const型的,只有一个办法,你把name加
mutable修饰符,mutable修饰符表示即使是在const成员函数里面也能被修改值!
|
|