Результаты поиска по запросу "downcast"
Теперь, если класс не полиморфен, компилятору не удастся выяснить, указывает ли pCar на honda или toyota car. Обратите внимание, что это только один из способов реализации dynamic_cast, поскольку стандарт C ++ ничего не говорит о vtables.
дующем коде при построенииobj в случае 1 мы строимderived Объект класса тоже, но его функции-члены просто недоступны дляobj, Таким образом, при снижении (то есть, в случае 2), используяobj в качестве источника мы построилиderived в этом уже. ...
Выигрывает ли производительность / память от короткого замыкания при даункастинге?
пишу крупномасштабное приложение, где яЯ стараюсь сохранить как можно больше памяти, а также повысить производительность. Таким образом, когда у меня есть по...
Безопасность недействительного даункаста с использованием 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Таким образом, актерский ...
Шаблон проектирования, позволяющий избежать потери при передаче сообщений
Базовый классMessageHandler вывел классы. Они хотели бы передавать сообщения друг другу. Сообщения могут быть разных классов, но могут быть сделаны для общего базового класса. Как каждый можетMessageHandler избежать передачи полученного ...
поддерживать массивы.
отреть возможность: struct SomethingThatsABase { virtual bool IsChildOne() const { return false; } virtual bool IsChildTwo() const { return false; } }; struct ChildOne : public SomethingThatsABase { virtual bool IsChildOne() const { return true; ...