Результаты поиска по запросу "downcast"

5 ответов

Привести текущий объект ($ this) к классу-потомку

1 ответ

http://cpp.sh/84eo

4 ответа

Теперь, если класс не полиморфен, компилятору не удастся выяснить, указывает ли pCar на honda или toyota car. Обратите внимание, что это только один из способов реализации dynamic_cast, поскольку стандарт C ++ ничего не говорит о vtables.

дующем коде при построенииobj в случае 1 мы строимderived Объект класса тоже, но его функции-члены просто недоступны дляobj, Таким образом, при снижении (то есть, в случае 2), используяobj в качестве источника мы построилиderived в этом уже. ...

ТОП публикаций

6 ответов

пример явного приведения типов в Java

Я сталкивался с этим примером на http://www.javabeginner.com/learn-java/java-object-typecasting [http://www.javabeginner.com/learn-java/java-object-typecasting]и в части, где говорится о явном приведении типов, есть один пример, который смущает ...

3 ответа

 в несколько разных производных классов. Мне нужно, чтобы контейнер содержал указатели базового класса, чтобы позволить это.

отрим следующую схему: class Base { /* ... */ }; class Derived : public Base { public: void AdditionalFunctionality(int i){ /* ... */ } }; typedef std::shared_ptr<Base> pBase; typedef std::shared_ptr<Derived> pDerived; int main(void) ...

3 ответа

 поддерживать массивы.

отреть возможность: struct SomethingThatsABase { virtual bool IsChildOne() const { return false; } virtual bool IsChildTwo() const { return false; } }; struct ChildOne : public SomethingThatsABase { virtual bool IsChildOne() const { return true; ...

2 ответа

@DeadMG: В моем исходном коде есть виртуальные методы, я просто убрал их из примера для ясности. Спасибо хоть :

ойка наэтот вопрос [https://stackoverflow.com/questions/844816/c-style-upcast-and-downcast-involving-private-inheritance] что я столкнулся. Рассмотреть возможность: class A {}; class B : private A { static void foo(); }; void B::foo(){ B* ...

2 ответа

Предположим, что ваша сущность «Работодатель» имеет только свойства, допускающие значение NULL, тогда можно перейти к таблице в базе данных и изменить «Дискриминатор» с «Пользователь» на «Работодатель». Все отношения будут сохранены. А также возможно сделать противоположное.

я есть проект, где я определил в EFEmployer как производный классUser, В моем процессе я создаю пользователя, не зная, будет ли он в конечном итоге работодателем (или другими пользователями), и позже мне нужно его преобразовать. Сначала я ...

1 ответ

Безопасность недействительного даункаста с использованием static_cast (или reinterpret_cast) для наследования без добавления членов

Мне было интересно, что стандарт говорит о безопасности следующего кода: class A { int v; }; class B: public A { }; // no added data member A a; B& b = static_cast<B&>(a);Очевидно, тип времени выполненияa являетсяAнеBТаким образом, актерский ...

3 ответа

Шаблон проектирования, позволяющий избежать потери при передаче сообщений

Базовый классMessageHandler вывел классы. Они хотели бы передавать сообщения друг другу. Сообщения могут быть разных классов, но могут быть сделаны для общего базового класса. Как каждый можетMessageHandler избежать передачи полученного ...