Я пытаюсь реализовать класс С++/CLI, который реализует как IList
, так и IList<T>
.
Так как они имеют перекрывающиеся имена, я должен реализовать одно из них явно, и естественным выбором должен быть IList.
Неявная реализация индексатора:
using namespace System::Collections::Generic;
generic<class InnerT> public ref class MyList : public System::Collections::IList, IList<InnerT> {
// ...
property InnerT default[int]{
virtual InnerT get(int index);
virtual void set(int index, InnerT item);
}
}
Сейчас я пытаюсь объявить индексатор по умолчанию для IList.
Мое предположение будет примерно таким:
property Object^ System::Collections::IList::default[int]{
virtual Object^ System::Collections::IList::get(int index);
virtual void System::Collections::IList::set(int index, Object^ item);
}
но это просто дает мне
ошибка C2061: синтаксическая ошибка: идентификатор «по умолчанию»
Любые подсказки?