您當前的位置:首頁 > 體育

為什麼c++中父類的私有變數依然要在子類中佔用記憶體空間?

作者:由 Funsimple 發表于 體育時間:2022-01-03

為什麼c++中父類的私有變數依然要在子類中佔用記憶體空間?匿名使用者2022-01-03 19:10:13

你是不是忘了還有繼承來的東西?

#include

class

B

{

public

B

()

a

1

{}

void

print

()

{

std

::

cout

<<

a

}

private

int

a

};

class

D

public

B

{};

int

main

()

{

D

d

d

print

();

}

想想看如果a不佔記憶體的話

D::print

要怎麼實現。

為什麼c++中父類的私有變數依然要在子類中佔用記憶體空間?有頭腦的白月光2022-01-04 09:30:30

雖然父類的私有變數在子類中不能直接訪問,但是從父類繼承而來的成員函式可以間接訪問。

為什麼c++中父類的私有變數依然要在子類中佔用記憶體空間?知乎使用者2022-01-06 17:28:51

理解反了,先繼承,再被加上訪問控制。

為什麼c++中父類的私有變數依然要在子類中佔用記憶體空間?高效能架構探索2022-01-07 22:27:03

不佔空間,要繼承有啥用?

為什麼c++中父類的私有變數依然要在子類中佔用記憶體空間?胖胖熊2022-02-05 07:36:02

為了保證基類的完整性啊,看一下下面的程式碼:

base* p = new A();

如果子類A中沒有一個完整的基類,那麼請問這裡的p指向了哪裡?還能不能當基類來用?

標簽: 基類  繼承  子類  print  父類