Вопросы по теме 'downcast'

насколько дорогой этот обходной путь понижения php
Этот вопрос связан с downcasting в php5 Насколько дорогой этот обходной путь понижения php? Является ли этот обходной путь понижения php слишком дорогим? Я повторил микротаймы, и кажется, что это занимает около 0,001. Интересно, может ли...
520 просмотров
schedule 11.06.2023

C++ dynamic_cast — полиморфное требование и понижение
В следующем коде при создании obj в случае 1 мы также создаем объект класса derived , но его функции-члены просто недоступны для obj . Таким образом, при понижении (т.е. в случае 2), используя obj в качестве источника, мы уже имеем в нем...
17065 просмотров
schedule 19.04.2022

С++ - более быстрое понижение дочерних элементов узла дерева?
У меня есть простая древовидная структура иерархии с узлом базового класса, представляющим узел. Узел может быть другого конкретного типа (подкласс). class Node { vector<Node*> childs; // simple node manipulation methods const...
478 просмотров
schedule 31.12.2022

Понижение наследования C++
У меня есть базовый класс следующим образом: class point //concrete class { ... //implementation } class subpoint : public point //concrete class { ... //implementation } Как преобразовать точечный объект в подточечный объект? Я...
53323 просмотров
schedule 20.04.2022

Downcast с использованием приведения C-стиля при знании конкретного типа подкласса
В моем проекте у меня есть дерево QObject разных типов. Позвольте мне привести вам простой пример, который должен дать вам представление о том, о чем я говорю. Это может быть примерное дерево QObject (не диаграмма наследования, но чем-то похожее на...
444 просмотров
schedule 08.11.2022

как получить реализацию суперкласса из подкласса с помощью повышения или другими методами?
я просто хотел знать, как получить реализацию суперкласса, используя, например, подкласс. class Animal { void poo() { System.out.println("general poo"); } } class Horse extends Animal{ void poo() {...
195 просмотров
schedule 12.10.2022

Почему DECLARE_DYNAMIC и IMPLEMENT_DYNAMIC необходимы для DYNAMIC_DOWNCAST?
У меня есть два класса: /*Switch.h*/ class CSwitch : public CDeviceEntity {} /*EndSystem.h*/ class CEndSystem : public CDeviceEntity {} но когда я использую: CDeviceEntity* dev = NULL; dev = topo->headList[i]->node; if (...
6408 просмотров
schedule 01.06.2022

Практическое использование понижения
Я закончил читать главы о полиморфизме и наследовании и выполнил все упражнения из моих книг по Java. Но я до сих пор не понимаю, зачем мне на практике использовать понижающее приведение. Не могли бы вы привести несколько примеров из работы или...
418 просмотров
schedule 26.01.2023

Краткий способ опустить содержимое контейнера
Я часто ловлю себя на том, что делаю что-то вроде: val json:Map[String,Any] = getJSON(...) val v = json.get("username") val uname = if ( v!=null ) v.asInstanceOf[toString] ) else null тогда как я бы предпочел написать: val uname =...
353 просмотров
schedule 11.10.2022

Полиморфное понижение частоты в С#?
Я пытаюсь приготовить еду для своих IAnimal , используя FoodFactory , и у меня есть большая List<IAnimal> из Dog , Fox и т. д. В идеале я бы передал IAnimal , а FoodFactory вернул бы правильную еду, но я не знаю, как это сделать....
345 просмотров
schedule 19.09.2023

Приведение объекта базового класса к производному классу
Я оказываюсь в затруднительном положении. Я строю некоторую логику поверх существующего проекта, предоставленного мне в банке. Следовательно, у меня нет возможности изменять эти классы. Я хочу написать дополнительные методы для существующего...
8444 просмотров

C++ - Поиск подходящего дизайна для этого
Я пишу интерпретатор сценариев, и мне сначала нужно разметить строку, содержащую исходный код. Для этого я определил разные вещи: Идентификаторы (имена переменных) ; Символы (+, - и т. д., включая «алфавитные» операторы, такие как «возврат»);...
70 просмотров

Как преобразовать класс в его базовый тип, чтобы установить значения с помощью Activator.CreateInstance?
Дано //all types of T inherit class name of BaseClass... public void Test<T>(Action<T> CallBack){ var obj = (T) Activator.CreateInstance<T>(); //Debugger shows obj of proper type and shows its proper baseclass //now I...
103 просмотров
schedule 18.04.2022

когда использовать три разные формы ключевого слова, как в swift [дубликаты]
В настоящее время я читаю «язык быстрого программирования 2.1» и изучаю, как использовать понижающее ключевое слово «как». В книге есть три разных формы as: as, as? и в качестве!. Я понимаю, когда использовать as? и в качестве! но не может...
68 просмотров
schedule 25.09.2022

Понижающее приведение с использованием dynamic_cast возвращает null
Я пытаюсь преобразовать объект базового класса в объект производного класса с помощью dynamic_cast , но dynamic_cast возвращает значение null. Можно ли понизить с помощью dynamic_cast ? struct A { virtual ~A() {} }; struct B : A {}; int...
8304 просмотров
schedule 27.04.2022

Избегайте как статического, так и динамического приведения
Я обновляю систему, которая получает многоадресные сообщения, разбивает данные на классы, а затем передает указатель базового класса в отдельный поток через очередь. Затем другой поток считывает данные из классов и сохраняет их в таблицах. Есть 2...
110 просмотров
schedule 03.06.2022

Перегрузка эталонного приведения C++ (понижающее наследование)
Можно ли перегрузить приведение ссылок в C++? У меня есть код, который я не могу трогать в формате: void someMethod(Parent& parentReference, ...){ ... Child& child = static_cast<Child&>(parentReference); (Класс...
376 просмотров

Быстрое литье / нисходящее литье
Почему проект шаблона игры Sprite Kit Game, созданный Xcode, использует as! : if let sceneNode = scene.rootNode as! GameScene? {...} Разве следующее не будет одинаково хорошо? if let sceneNode = scene.rootNode as? GameScene {...}...
771 просмотров
schedule 08.02.2023

C++ Преобразование структуры вниз
У меня есть следующий код: struct Operation { public : OperationName name; }; struct FilterOperation : Operation { FilterName filter; std::list<std::string> params; }; OperationName и FilterName — это перечисления,...
751 просмотров
schedule 26.06.2023

С# Приведение родительского объекта к подклассам
Я получаю список родительских объектов (устройств) и хотел бы преобразовать каждый объект устройства в объект подкласса. Макет будет выглядеть примерно так: public class Device { public string FimrwareVersion { get; set; } public string...
578 просмотров
schedule 24.09.2022