欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

C++繼承-創(chuàng)新互聯(lián)

繼承本質(zhì)是類層次的復(fù)用。

創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括留壩網(wǎng)站建設(shè)、留壩網(wǎng)站制作、留壩網(wǎng)頁制作以及留壩網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,留壩網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到留壩省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

學(xué)生和老師的類中包含Person類的內(nèi)容。?

Print函數(shù)也是繼承下來的。?

上述代碼中,Peraon叫父類,也叫基類,Student叫子類也叫派生類。

public叫繼承方式,繼承方式包括公有保護(hù)和繼承。

基類中的私有本質(zhì)是不想被繼承。

父類中的私有成員,子類中不能訪問。父類中的保護(hù)成員,子類可以訪問。

但是age在studen類中,就是不能被訪問。

基類的私有成員在子類都是不可見。基類的其他成員在子類的訪問方式 == Min(成員在基類的訪問限定符,繼承方式),public >protected >private。

去掉繼承方式,class默認(rèn)是私有繼承,子類外部不能訪問繼承成員,struct默認(rèn)是公有繼承,子類外部能訪問繼承成員。

子類會(huì)先構(gòu)造父類,然后構(gòu)造子類,析構(gòu)時(shí)先析構(gòu)子類,再析構(gòu)父類。


父類和子類賦值轉(zhuǎn)換。

子類對(duì)象 可以賦值給 父類的對(duì)象 / 父類的指針 / 父類的引用。?

int main()
{
Person p;
Student s;
p=s;
}

其中p=s中間不存在類型轉(zhuǎn)換,沒有產(chǎn)生臨時(shí)變量。

而底下這個(gè)i=d會(huì)產(chǎn)生臨時(shí)變量,臨時(shí)變量是int類型。

所以底下沒有const修飾的引用會(huì)報(bào)錯(cuò)。在前面加上const就好了。

父類 ++后,子類也++

賦指針也行,指針指向子類中的父類部分。

  • 繼承中的作用域

下面這個(gè)_num訪問的是Student本身的_num

訪問父類的話可以指定作用域。

子類和父類有同名成員時(shí),子類隱藏了父類成員。

子類和父類中有同名成員,子類成員將屏蔽父類對(duì)同名成員的直接訪問,這種情況叫隱藏,
也叫重定義。?


兩個(gè)fun構(gòu)成隱藏關(guān)系。?

構(gòu)成隱藏關(guān)系。

父類和子類函數(shù)名相同就構(gòu)成隱藏。

重載要求必須在同一個(gè)作用域。?兩個(gè)fun不構(gòu)成重載。

class A
{
public:
	void fun()
	{
		cout<< "A::func()"<< endl;
	}
};
class B : public A
{
public:
	void fun(int i)
	{
		cout<< "B::func(int i)->"<< i<< endl;
	}
};

void Test()
{
	B b;
	b.fun(10);
};

如果去掉fun調(diào)用時(shí)的參數(shù),就會(huì)編譯報(bào)錯(cuò)。

因?yàn)閮蓚€(gè)fun構(gòu)成隱藏關(guān)系,去掉fun的參數(shù),就要訪問A中的fun,但因?yàn)楸浑[藏,直接訪問不行。

class A
{
public:
	void fun()
	{
		cout<< "A::func()"<< endl;
	}
};
class B : public A
{
public:
	void fun(int i)
	{
		cout<< "B::func(int i)->"<< i<< endl;
	}
};

void Test()
{
	B b;
	b.fun();
};

這樣改就行了。?

建議繼承中不要定義同名成員。


  • 派生類的默認(rèn)成員函數(shù)

為什么調(diào)用Student會(huì)調(diào)用Person中的函數(shù)并執(zhí)行?

子類中,父類成員調(diào)用父類構(gòu)造函數(shù)完成初始化。

父類沒有默認(rèn)構(gòu)造函數(shù)會(huì)報(bào)錯(cuò)。

規(guī)定不能在子類初始化列表直接初始化父類成員變量。

必須要調(diào)用父類的成員函數(shù)。

下面看看拷貝構(gòu)造。

父類部分調(diào)用父類拷貝構(gòu)造。

而如果是自定義類型,需要我們寫個(gè)拷貝構(gòu)造。

我們看到父類中拷貝構(gòu)造函數(shù)參數(shù)是父類。

在這里如何找到要拷貝的Person對(duì)象?

我們直接傳s就可以,?

子類傳給父類發(fā)生了賦值轉(zhuǎn)換。s傳的就是Person中的內(nèi)容。?

我們來看看賦值。

我們不寫,也會(huì)默認(rèn)調(diào)用父類賦值。

顯示寫就這樣寫。?

但這樣運(yùn)行會(huì)報(bào)棧溢出錯(cuò)誤。

因?yàn)檫@個(gè)賦值和父類賦值構(gòu)成隱藏關(guān)系,這里面的operator=(s)調(diào)用的是自己,所以會(huì)棧溢出。

這樣改就好了。

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

網(wǎng)頁題目:C++繼承-創(chuàng)新互聯(lián)
文章地址:http://www.chinadenli.net/article14/cessge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)定制開發(fā)搜索引擎優(yōu)化自適應(yīng)網(wǎng)站網(wǎng)站建設(shè)電子商務(wù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管