亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

c++?虛繼承的實現(xiàn)示例

 更新時間:2025年06月23日 09:14:31   作者:zh_xuan  
本文主要介紹了c++?虛繼承的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

測試菱形繼承問題:

void testXuJicheng() {
	// 反面教材。一個基類被中間倆個派生類繼承,最終的子類同時繼承這倆個中間派生類,形成的類繼承關(guān)系圖像是菱形結(jié)構(gòu)。
	// 菱形繼承導(dǎo)致二義性與數(shù)據(jù)冗余問題。
	class Biology {
	public:
		string name;
	};

	class Bird : public Biology {};

	class Man: public Biology {};

	// 假設(shè)有一種生物BirdMan同時繼承Bird和Man
	class BirdMan : public Bird, public Man {}; 

	BirdMan b;
	b.name = "birdMain";
}

可以看到編譯錯誤:BirdMan::name不明確。

原因是,成員變量name從倆個父類中繼承到,這里不知道是指的哪個。

代碼修改為:

void testXuJicheng() {
	class Biology {
	public:
		string name;
	};

	class Bird : virtual public Biology {}; // 虛繼承

	class Man: virtual public Biology {}; // 虛繼承

	// 假設(shè)有一種生物BirdMan同時繼承Bird和Man
	class BirdMan : public Bird, public Man {}; 

	BirdMan b;
	b.name = "安德森";
	cout << "a BirdMan, name: " << b.name << endl;
}

打?。?/p>

到此這篇關(guān)于c++ 虛繼承的實現(xiàn)示例的文章就介紹到這了,更多相關(guān)c++ 虛繼承內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C++中CString string char* char 之間的字符轉(zhuǎn)換(多種方法)

    C++中CString string char* char 之間的字符轉(zhuǎn)換(多種方法)

    在寫程序的時候,我們經(jīng)常遇到各種各樣的類型轉(zhuǎn)換,比如 char* CString string 之間的互相轉(zhuǎn)換,這里簡單為大家介紹一下,需要的朋友可以參考下
    2017-09-09
  • C++標(biāo)準(zhǔn)C函數(shù)在各平臺編譯結(jié)果都相同

    C++標(biāo)準(zhǔn)C函數(shù)在各平臺編譯結(jié)果都相同

    今天小編就為大家分享一篇關(guān)于C++標(biāo)準(zhǔn)C函數(shù)在各平臺編譯結(jié)果都相同,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • 如何編譯libfreetype方法詳解

    如何編譯libfreetype方法詳解

    libfreetype是為跨平臺設(shè)計的,在windows下要編譯的話,可以直接打開目錄進行編譯,本文將詳細(xì)介紹libfreetype編譯
    2012-11-11
  • C++算術(shù)運算符與類型轉(zhuǎn)換

    C++算術(shù)運算符與類型轉(zhuǎn)換

    這篇文章主要介紹了C++算術(shù)運算符與類型轉(zhuǎn)換,C++當(dāng)中提供5種基礎(chǔ)的算術(shù)運算符,分別是加法、減法、乘法、除法和取模。下main我們就一起來看看下面文章得具體舉例與說明,需要的朋友可以參考一下,希望對你有所幫助
    2021-11-11
  • C++STL教程之vector模板的使用

    C++STL教程之vector模板的使用

    模板類vector是一個動態(tài)數(shù)組,類似于string類,可存放任意類型,能夠末尾、中間增加數(shù)據(jù),基本上是是new創(chuàng)建動態(tài)數(shù)組的替代品,vector可以自動完成new和delete
    2022-08-08
  • 基于C++執(zhí)行內(nèi)存memcpy效率測試的分析

    基于C++執(zhí)行內(nèi)存memcpy效率測試的分析

    本篇文章對C++中執(zhí)行內(nèi)存memcpy的效率進行了分析測試。需要的朋友參考下
    2013-05-05
  • 詳解C語言printf()輸出格式

    詳解C語言printf()輸出格式

    這篇文章主要介紹了C語言printf()輸出格式,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-03-03
  • C++利用MySQL API連接和操作數(shù)據(jù)庫實例詳解

    C++利用MySQL API連接和操作數(shù)據(jù)庫實例詳解

    這篇文章主要介紹了C++利用MySQL API連接和操作數(shù)據(jù)庫實例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-01-01
  • 淺析在C/C++中如何寫調(diào)試宏

    淺析在C/C++中如何寫調(diào)試宏

    這篇文章主要為大家詳細(xì)介紹了在C/C++中如何寫調(diào)試宏的相關(guān)知識,文中的示例代碼講解詳細(xì),具有一定的借鑒價值,有需要的小伙伴可以參考一下
    2024-05-05
  • C語言完數(shù)的實現(xiàn)示例

    C語言完數(shù)的實現(xiàn)示例

    C語言中的完數(shù)指的是一個正整數(shù),本文主要介紹了C語言完數(shù),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05

最新評論