|
5 / 4 / 2
Регистрация: 24.09.2016
Сообщений: 423
|
||||||
При помощи делегата выполняется конструктор?31.01.2024, 02:48. Показов 2239. Ответов 24
Привет всем . . . есть такой код
И второй вопрос: тут же вообще нет соответствия делегату по сигнатуре - а код выполняется. Почему ? Добавлено через 1 минуту Если сейчас будет ответ что это Autofac внедряет зависимости на 24 строке кода - то следующий вопрос: а какова в таком случае роль делегата Factory в выполнении кода конструктора ?
0
|
||||||
| 31.01.2024, 02:48 | |
|
Ответы с готовыми решениями:
24
Вызвать все три метода при помощи делегата Потоки: error C3350: System::Threading::ThreadStart: конструктор делегата ожидает 2 аргументов |
|
Администратор
|
|
| 01.02.2024, 01:43 | |
|
DLD, и что? Вас же не удивляет (я надеюсь) что в конструктор RepositoryStore передается экземпляр ICtx который вы явно не объявляли? Чем это отличается от делегата?
0
|
|
|
|
||
| 01.02.2024, 01:47 | ||
|
0
|
||
|
5 / 4 / 2
Регистрация: 24.09.2016
Сообщений: 423
|
|
| 01.02.2024, 02:48 [ТС] | |
|
Wolfdp, я думаю логика работы кода следующая(поправьте меня пожалста если я несу бред).
1.до 18 строки кода проблем нет 2.на 18 строке происходит вызов метода на который должен указать делегат 3.делегат ищет наилучшее соответствие по сигнатуре - не находит его в пользовательском коде - смотрит на подключенные библиотеки, ищет метод должен вернуть объект определенного класса, путем его создания. За создание таких объектов отвечает метод CreateInstance из класса Activator. Вот его он и вызывает - ведь других нет подходящих 4.Входящий параметр система определяет по этой же строке 18 чтобы не было ошибки компиляции. 5.Дальше метод CreateInstance вызывает конструктор пользовательского кода, причем с любым количеством параметров - тут сигнатура не имеет особого значения --------------------- Почему я считаю метод CreateInstance единственным - а потому что я начинающий и другие методы мне не известны Выходит эта часть кода выполняется без участия Autofac - самой системой ?
0
|
|
|
Администратор
|
|||
| 01.02.2024, 07:59 | |||
Делегат не может ничего искать. Его экземпляр уже создан библиотекой Auotofac. Выще я показал как может выглядеть тело этого метода.
0
|
|||
|
|
||
| 01.02.2024, 10:33 | ||
|
Даже больше -- вы сейчас роетесь в этом Autofac настолько подробно с какой целью? В 99% всё что нужно: указать какой интерфейс\тип чем будет реализовываться. Под "чем" подразумевают три варианта: - явно передать объект - передать делегат, возвращающий объект - передать <Type>, чтобы через рефлексию его найти и создать (подставив нужные параметры) Из ньюаснсов -- цикл жизни (singelton или что-то другое). Прям супер сложные конструкции обычно особо не регают, а выносят логику в всякие Factory\Manager\Provider. Тупо изучение документации/либы слабо поможет. Пока не поработаете с относительно большим проектом где всё это используется -- понимания зачем и на кой надо будет приходить с трудом.
3
|
||
| 01.02.2024, 10:33 | |
|
Анимация при помощи многократной перерисовки и при помощи манипуляции с палитрой Разница лямбда выражения, делегата (\анонимного делегата), методом (\анонимных методов) поиск максимального элемента оформить при помощи функции, а номера вторго элемента, равного максимальному-при помощи процедуры Отличие делегата от делегата с лямбда-выражением Конструктор в классе-наследнике не выполняется. Подскажите как исправить? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
|
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ
Основная суть и тезисы по измерениям:
0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема.
Объект не может перемещаться в 0D.
1D (Первое измерение):. . .
|