Вопросы по теме 'upcasting'
Можно ли преобразовать объект в более высокий класс снова, не пытаясь выполнить приведение для каждого типа производного класса от типа базового класса?
У меня есть случай, когда мне дается набор объектов, которые происходят от одного и того же базового класса. Если я перебираю коллекцию и проверяю тип каждого элемента, я вижу, что объект имеет производный тип, и затем обрабатываю его соответствующим...
220 просмотров
schedule
20.10.2022
Приведение производного класса к одной из баз через базовый указатель
РЕДАКТИРОВАТЬ: Хорошо, как я теперь вижу, это сильно меняет случай, поэтому более точный сценарий таков:
Текущая иерархия в чем-то похожа на эту:
class IBase() { virtual void Foo() = 0; };
class Base() : public IBase { virtual void Foo() { }...
174 просмотров
schedule
15.10.2023
Путаница с повышением и понижением в Java
Хорошо. Так что если...
int x=3;
int y=5;
x=y;
Получается x=5 , верно?
Итак, если B является подклассом A ...
A a=new A();
B b=new B();
a=b;
^^^Почему это считается преобразованием?
Разве «а» не должно стать «б», а не...
2289 просмотров
schedule
02.07.2023
Когда `static_cast‹Base*›(static_cast‹void*›(derived))` из указателя на производный класс действителен?
В этом вопросе не должно быть полиморфизма, т.е. никаких виртуальных методов, никаких виртуальных базовых классов. На всякий случай, если это имеет значение, мой случай не связан ни с одним из них.
Предположим, у меня есть класс Derived , у...
167 просмотров
schedule
08.11.2022
Преобразование C++ из множественного наследования; источник не полиморфен
Я новичок в С++. У меня есть два чистых абстрактных класса (например, интерфейсы), и я получаю класс из этих двух чистых абстрактных классов.
В одном случае мне нужно преобразовать указатель производного класса в один из базовых абстрактных...
661 просмотров
schedule
11.09.2022
Структура памяти множественного наследования после преобразования
Я изучаю свою лекцию по C++, и профессор показывает слайд с этим примером кода. Он говорит, что, поскольку b1 является первым родителем (так что я думаю, что он реализован первым?), он имеет тот же адрес памяти, что и дочерний класс (Mi). Тогда я...
26 просмотров
schedule
18.05.2024