Экземпляр базового класса в наследовании - PullRequest
0 голосов
/ 05 июня 2018

Надеюсь, я не спрашиваю то, что уже было здесь ответили.

Если мой класс B наследуется от класса A, new B() создает два экземпляра в куче, где экземпляр B содержит указатель на экземпляр A, или будет создан только один экземпляр B, включающий члены A?

Ответы [ 4 ]

0 голосов
/ 05 июня 2018

С Статья Microsoft Inheritance :

Так объект представляется в памяти, поскольку публикация класса напрямую наследует класс Object.

enter image description here

Таким образом, унаследованный класс - это объект, который содержит всю информацию о себе, а также о своем базовом классе.

0 голосов
/ 05 июня 2018

это создаст экземпляр B, который (из-за наследования) уже включает членов A, если я хорошо понял ваш вопрос

0 голосов
/ 05 июня 2018

Создает один экземпляр, и вы можете получить доступ ко всем членам как A, так и B в этом экземпляре.Как уже говорилось, А также относится к типу В.Я предполагаю, что в коде низкого уровня, вероятно, существует указатель на A.

0 голосов
/ 05 июня 2018

Это создаст один экземпляр B, и этот B также будет A.

...