C++中有以下幾種繼承的方式:
公有繼承(public inheritance):使用public關鍵字來指定基類和派生類之間的關系。在公有繼承中,基類的公有成員在派生類中仍然是公有的,私有成員在派生類中是不可訪問的。
私有繼承(private inheritance):使用private關鍵字來指定基類和派生類之間的關系。在私有繼承中,基類的公有和保護成員在派生類中都是私有的,不可直接訪問。
保護繼承(protected inheritance):使用protected關鍵字來指定基類和派生類之間的關系。在保護繼承中,基類的公有和保護成員在派生類中都是保護的,不可直接訪問。
此外,還存在多重繼承和虛繼承:
多重繼承(multiple inheritance):一個派生類可以繼承多個基類。通過在派生類的定義中使用逗號分隔多個基類。
虛繼承(virtual inheritance):用于解決菱形繼承(diamond inheritance)問題,即一個派生類繼承了多個直接或間接基類,而這些基類又繼承自同一個共同的基類。在虛繼承中,通過使用關鍵字virtual來聲明基類,使得在派生類中只有一個共享的基類子對象。
這些繼承方式可以根據實際需求來選擇使用。