60 / 48 / 13
Регистрация: 12.11.2012
Сообщений: 373
Записей в блоге: 2

Наследование от IEnumerator<T>: как предотвратить наследование IEnumerator

10.02.2014, 01:47. Показов 1466. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Создаю перечислитель и наследую от IEnumerator<T>, а он, зараза, наследует IEnumerator (который без типа).
И в итоге он требует от меня реализации сразу двух одноимённых свойств:

C++
1
property Object^ System::Collections::IEnumerator::Current;
и
C++
1
property T System::Collections::Generic::IEnumerator<T>::Current;
Если реализую только одно, то выдаёт ошибку, мол не реализовано второе.
А если реализовать оба, то ошибка в том, что они имеют одинаковое имя и находятся в одном и том же классе.

Сколько раз в C# такое делал, даже не думал, что может быть такая проблема. И на чистом C++, вроде бы, умею работать. Но вот решил попробовать C++ CLI и тут же тупик. Подскажите, может я что не так делаю?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.02.2014, 01:47
Ответы с готовыми решениями:

Реализация IEnumerator и IEnumerator<T>
Для новой коллекции пишу интерфейсы. Я так понял, что реализуется обычно и обычный и обобщенный варианты. Пишу: public interface...

Как реализовывать IEnumerator?
Никак не могу вникнуть в то, как правильно реализовывать интерфейс IEnumerator. Мсдн и гугл не помогли. Поможете разобраться в том, что я...

Как понять интерфейсы IEnumerator
Здравствуйте!Пытаюсь освоить этот интерфейс, и как не очень получается.Основной вопрос:имеет ли этот интерфейс готовую реализацию? Ведь он...

1
60 / 48 / 13
Регистрация: 12.11.2012
Сообщений: 373
Записей в блоге: 2
11.02.2014, 12:25  [ТС]
Всё всем спасибо. Сам нашёл решение. Вот тут похожая проблема обсуждалась. Нужно всего лишь Определить свойство с другим именем
C++
1
2
3
4
5
6
7
property Object^ Current2
        {
            virtual Object^ get() = System::Collections::IEnumerator::Current::get
            {
                return colInst->data[currentIndex];
            }
        };
И приравнять метод get методу из интерфейса. Если честно не совсем понимаю как это работает, но работает на ура. И со свойствами и с методами и со всем на свете.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.02.2014, 12:25
Помогаю со студенческими работами здесь

IEnumerator<Т> и IEnumerable<T> - в чем разница и как использовать?
Помогите, пожалуйста, разобраться с IEnumerator&lt;Т&gt; и IEnumerable&lt;T&gt;. В чем разница использования этих интерфейсов? Вернее, как их...

IEnumerable и IEnumerable<T>, IEnumerator и IEnumerator<T>
Здравствуйте, расскажите, пожалуйста, максимально подробно в чем различие между интерфейсами, которые казаны в заголовке, когда они...

Интерфейс IEnumerator
Как правильно реализовать интерфейс для связного списка - Examples.Collections.NonGeneric.LinkedListEnumerator?

IEnumerable, IEnumerator
Почему данный код не выводит информацию про студента? using System; using System.Collections; using System.Collections.Generic; ...

IEnumerable, IEnumerator
Есть код: using System; using System.Collections; namespace _58_IEnuerator_IEnuerable { class Program {


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru