|
27 / 27 / 3
Регистрация: 17.07.2008
Сообщений: 224
|
||||||||||||||||||||||||||
Фабрика классов: ковариантные возвращаемые типы не поддерживаются в управляемых типах10.07.2015, 09:50. Показов 1219. Ответов 5
Метки нет (Все метки)
Добрый день. Имеются 2 интерфейса:
1. IEmployeeAbstractFactory - представляет фабрику; 2. IEmployee - интерфейс сотрудника. Пытаюсь из фабрики получить некоторый объект, который имплементирует IEmployee. Класс EmployeeFactory имплементирует IEmployeeAbstractFactory. Класс Employee имплементирует IEmployee.
Как можно обойти данную ошибку? Заранее спасибо.
0
|
||||||||||||||||||||||||||
| 10.07.2015, 09:50 | |
|
Ответы с готовыми решениями:
5
VS: В этой конфигурации не поддерживаются 128-битные типы с плавающей запятой Фабрика XDTO и типы в ней |
|
Администратор
|
|||||||
| 10.07.2015, 11:28 | |||||||
Не знаю, как обстоят дела в C++/CLI с ко-/контравариантностью, но судя по сообщению
1
|
|||||||
|
27 / 27 / 3
Регистрация: 17.07.2008
Сообщений: 224
|
|
| 13.07.2015, 07:49 [ТС] | |
|
Есть ли способ сделать по-другому?
0
|
|
|
Администратор
|
|
| 13.07.2015, 10:47 | |
|
Konstantin1706, возвращать IEmployee^, как я привёл в коде выше.
Затем, для использования приводить к типу Employee^. C++/CLI не поддерживает ко(нтра)вариантность возвращаемых/принимаемых объектов, так что придётся городить велосипеды. Если уж очень нужно это свойство, то можно создать чистый, неуправляемый класс C++, он, насколько мне известно, поддерживает ко(нтра)вариантность, но пример не смогу написать, с плюсами знаком поверхностно, это к спецам.
1
|
|
|
27 / 27 / 3
Регистрация: 17.07.2008
Сообщений: 224
|
|
| 13.07.2015, 13:36 [ТС] | |
|
tezaurismosis, вся была проблема в моей невнимательности и усталости к концу недели. IEmployee^ я пытался возвратить, получив очередную ошибку. Я не указал, что метод getEmployee будет виртуальным. Указав, что метод виртуальный и возвращает интерфейс, компилируется без ошибок. Спасибо, тебе, больше, tezaurismosis , и желаю огромного терпения =).
0
|
|
| 13.07.2015, 15:13 | |
|
Не по теме: Konstantin1706, и тебе спасибо за хорошие слова. Ты уже второй раз сам разбираешься с проблемой - моё участие минимально. Правильно говорят - хочешь решить проблему, объясни её другому. :)
0
|
|
| 13.07.2015, 15:13 | |
|
Помогаю со студенческими работами здесь
6
Фабрика классов Фабрика обьектов и названия классов Ошибка "смешанные типы не поддерживаются" при объявлении массива Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
Программный отбор элементов справочника 1С по перечислениям
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит предопределенное значение перечислений.
Процедура. . .
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|