Shibboleth IdP v3.4.3 - нет страницы входа

«Конечно, до тех пор, пока вы выделяете память в куче», - где выделенная память не имеет к этому никакого отношения. Это все о семантике. Возьмем, например:

Derived d;
Base* b = &d;

d находится в стеке (автоматическая память), но полиморфизм будет по-прежнему работать на b.

Если у вас нет указатель базового класса или ссылка на производный класс, полиморфизм не работает, потому что у вас больше нет производного класса. Take

Base c = Derived();

Объект c не является Derived, а Base из-за нарезки. Итак, технически, полиморфизм все еще работает, просто у вас больше нет объекта Derived.

Теперь возьмите

Base* c = new Derived();

c, просто указывая на некоторые место в памяти, и вам все равно, действительно ли это Base или Derived, но вызов метода virtual будет разрешен динамически.

0
задан user2850571 17 January 2019 в 08:49
поделиться