今天在學習C++的繼承有關知識,然后在書中看到一段代碼,沒有理解,網上搜了也沒有懂,所以來問問同仁們,大家知道什么意思嗎?
程式如下圖:就是大拇指右邊那句代碼,string后面跟了“&”,好像和參考不一樣啊
uj5u.com熱心網友回復:
回傳參考 。uj5u.com熱心網友回復:
是不是這樣就能訪問基類中private的成員了啊,但是具體是怎樣運行的呢,他和前面那個函式setName()是配套的嗎,也就是說在子類的成員函式中,只要呼叫setName()函式,既可以訪問基類中私有成員了,也就是string& GetName()函式所回傳的那個值uj5u.com熱心網友回復:
我覺得其實這里沒必要用參考,用參考有副作用(去掉參考試試):// Note:Your choice is C++ IDE
#include <iostream>
#include <string>
using namespace std;
class Person
{
private:
string name;
public:
Person(string name)
{
this->name=name;
}
string& getName()
{
return name;
}
};
int main()
{
Person p1("Tom");
cout<<p1.getName()<<endl;
p1.getName()="Mike";
cout<<p1.getName()<<endl;
return 0;
}
可以通過getName()來修改name,這應該不是期望的。
你這本教材叫什么、作者?
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/54942.html
標籤:基礎類
