C 基礎 繼承

2021-08-17 05:12:35 字數 931 閱讀 9340

如果乙個類的成員被定義成該類的私有成員,那麼只有基類的成員和友元可以訪問類中的私有成員。同時派生類也無法訪問基類的私有成員,派生類的例項物件也無法訪問這些私有成員。如果派生類為公有繼承,基類成員保持自己的訪問級別:基類的public成員為派生類的public成員,基類的protected成員為派生類的protected成員。如果是受保護成員,基類的public和protected成員在派生類中為protected成員。如果是私有繼承,基類中的所有成員在派生類中為private成員。

對於私有和保護繼承,派生類中的函式成員可以呼叫基類中的資料成員(但是基類中的所有成員在派生類中都是私有的),派生類例項後的物件是無法訪問基類中的那些成員的。

class fruit

~fruit() {}

void print()

protected:

string name;

private:

int quality;

}; void print() };

int main()

return 0;

}

如果想要使用基類中的資料成員的話,可以在public後面加上using fruit::name;

void print() };

int main()

return 0;

}2、基類和派生類的轉換

可以使用派生類的物件給基類的物件進行初始化操作。也存在從派生型別引用到基類型別引用的自動轉換,即,可以將派生類物件的引用轉換為基類子物件的引用,對指標也類似。但是沒有從派生類物件到基類物件的直接轉換。

如果是public繼承,則使用者可以將派生類轉換成基類。但是如果派生類是private或protected繼承派生的,則無法將派生類物件轉換成基類物件。private繼承的話,派生類無法轉換成基類。protected繼承,則派生類的成員可以轉換成基類型別。

C 基礎 繼承

繼承class 派生類 訪問限定符 基類 public protected private 類成員函式 友元函式 子類函式 類物件 子類繼承類父類所有的成員變數和成員函式。與訪問限定 符無關。訪問限定符只是限制了訪問。子類訪問父類成員變數,把父類成員變數訪問限制符,改為 protected 子類內部...

C 繼承基礎

一,繼承和多型 類之間的繼承 基類,父類 成員變數 描述類的屬性 成員函式 功能 派生類 子類 體現出與基類的不同 繼承 基類與派生類之間訪問許可權 1.public繼承 基類裡面的公有成員變數被繼承後在派生類中也是公有的 可以在類外被訪問 基類裡面的保護成員變數被繼承後在派生類中可以被訪問,在派生...

C 繼承之繼承基礎

一 繼承的相關概念 繼承是 種復 段,在繼承關係 子類繼承父類的成員,由此達到復 的 的。通過繼承定義乙個類,繼承是型別之間的關係建模,共享公有的東西,實現各自本質不同的東西。二 三種訪問限定符 繼承關係 三 繼承的重要說明1.子類擁有父類的所有成員變數和成員函式 2.子類就是一種特殊的父類 3.子...