Описание тега dynamic-dispatch

In computer science, dynamic dispatch is the process of selecting which implementation of a polymorphic operation (method or function) to call at runtime.
3 ответа

Динамическая отправка без шаблона посетителя

проблема Я работаю с уже существующей библиотекой, к исходному коду которой у меня нет доступа. Эта библиотека представляет собой AST. Я хочу скопировать части этого AST, но переименовать ссылки на переменные в процессе. Поскольку может существовать…
2 ответа

Многократная отправка с использованием дженериков

Я пытаюсь абстрагироваться от реализации моего интерфейса, предоставляя фабрику / конструктор с использованием обобщений. Тем не менее, я сталкиваюсь с проблемой множественных отправок и обобщений C# во время выполнения, которые делают что-то странн…
1 ответ

Динамическая диспетчеризация ruby ​​с последовательным вызовом метода

Я допускаю небольшую проблему при выполнении динамической отправки на некотором объекте в Ruby Я хочу вызвать метод, но я могу получить его только с помощью нескольких вызовов т.е. dynamic_string = 'my_object.other_object.this_method' Я хочу позвони…
09 май '18 в 10:20
4 ответа

Это динамическая отправка?

Это динамическая отправка: abstract class A{ public method Meth1(){ //somecode } } class B extends A{ } class C extends A{ } В другом классе полностью: Some_Method(A a){ a.Meth1(); } Я не уверен, что это динамическая отправка, потому что поведение о…
20 авг '11 в 15:57
2 ответа

Почему именно компиляторы не могут определить истинный тип переменной до времени выполнения?

Я часто слышу о том, что компиляторы не могут определить точную реализацию метода при определенных условиях. Пример Fox, мы можем представить сценарий (так говорят люди), где для родительского класса с методом foo(), который был переопределен в доче…
1 ответ

Как узнать количество возможных целей на сайте вызова?

В Java большинство методов являются виртуальными. На сайте вызова могут быть вызваны различные фактические методы в зависимости от объектов. Это динамическая отправка. Вопрос: Можем ли мы получить количество целей для сайта вызова статически? Наприм…
2 ответа

C++ или D: идиома для разделения классов без динамической отправки?

Я - настоящий любитель производительности, но я знаю о важности выполнения автоматических тестов (пока более эффективные формальные методы проверки не станут мейнстримом). Недостатком является то, что когда вы пытаетесь создать тестируемость, вы нач…
1 ответ

Вызов функции Java перегружен и переопределен

class A { void meth(A a) { System.out.println("A a.meth() called"); } void meth(D d) { System.out.println("A d.meth() called"); } void meth(E e) { System.out.println("A e.meth() called"); } } class D {} class E extends D {} class B extends A { void …
1 ответ

Преобразовать динамическое связывание target-c в swift 2

У меня есть ситуация, когда я конвертирую проект obj-c в swift. это так // few lazy property initializers as, @property (nonatomic, strong) MyObject *property1; @property (nonatomic, strong) MyObject *property2; @property (nonatomic, strong) MyObjec…
09 июл '16 в 15:35
0 ответов

Расширение динамической диспетчеризации для вызова функций в модели представления?

Я использую MVVM в приложении Xamarin, у меня есть интерфейс для навигации между страницами: public interface INavigate { INavigate Next(); INavigate Previous(); string ViewTitle { get; } } В представлении реализации: public partial class V2Upload :…
06 янв '19 в 10:34
3 ответа

Многократная отправка: концептуальная необходимость?

Интересно, следует ли включать в объектно-ориентированный язык концепцию множественной диспетчеризации (то есть встроенную поддержку, как будто динамическая диспетчеризация виртуальных методов распространяется и на аргументы метода), если ее влияние…
3 ответа

Отражение или динамическая диспетчеризация

Я пишу абстрактный анализатор файлов (C#), который расширен двумя конкретными анализаторами. Оба должны выполнить несколько проверок. В настоящее время в абстрактном парсере есть метод validate, который использует отражение для вызова всех методов с…
30 ноя '09 в 11:07
4 ответа

Подозрения о состоянии многопоточности в виртуальных вызовах C++ с реализацией vtable

У меня есть подозрение, что в определенной ситуации многопоточности C++ может возникнуть состояние состязания, включающее вызовы виртуальных методов в реализации динамической диспетчеризации vtable (для которой указатель vtable хранится как скрытый …
0 ответов

Динамическая диспетчеризация и механизм проверки типов в Java

Я хотел бы понять, как внутренне представлен объект в java, состоящий из "указателей" на поля и функции в vtables, и как эти внутренние представления изменяются при выполнении присваиваний, неявных приведений и явных приведений, а также как статичес…
28 июл '17 в 05:31
5 ответов

Доступ к методу Java в процессе полиморфизма

У меня есть следующий код Java. class A { public void method1() { System.out.println("A 1"); method2(); } public void method2() { System.out.println("A 2"); } } class B extends A { @Override public void method2() { System.out.println("B 2"); } } pub…
27 дек '17 в 17:40
2 ответа

Предоставить другое тело функции для универсальной функции на основе типа

Предположим, у меня есть какая-то общая функция genericFunc :: a -> b genericFunc x = doSomeHardWork Но для определенного типа есть гораздо более эффективный способ genericFunc может быть сделано genericFunc :: ParticularType -> b genericFunc …
11 дек '11 в 20:57
1 ответ

Этот код сэмпла 4-6 dynamic_dispatch.py ​​запускает сервер и быстро его выключает.

Это должно создать сервер календаря на порту 10310. К сожалению, код выполняется и быстро завершается без ошибок. В чем может быть проблема? Согласно искаженной книге О'рейли, которую я читаю, я смогу перейти на localhost:10310/2013 и посмотреть неб…
12 янв '18 в 18:51
0 ответов

Java - общий интерфейс для посетителей

Я использую шаблон посетителя для выполнения функций в иерархии классов. Например: // Node.java public abstract class Node {} // Addition.java public final class Addition extends Node { public final Node e1; public final Node e2; public Addition(fin…
21 ноя '16 в 13:50
0 ответов

Протокол, который определяет наблюдаемые переменные

Можно ли как-то определить в protocol, это что то var должно быть @objc dynamicтак что это можно наблюдать с KVO?
18 фев '18 в 13:17
2 ответа

Создание инкапсулированной, но расширяемой библиотеки анимации на С ++

Я строю библиотеку анимации в C++. Библиотека будет включать систему моделирования и рендеринга сцен. Требования системы Разделение моделирования и рендеринга. Информация о состоянии сцены должна храниться отдельно от процедур рендеринга сцены. Расш…
29 июн '17 в 22:01