Имейте в виду, этот код работает в C #, но не в VC ++. Net (бесит). Мне интересно, где моя ошибка здесь.
С учетом кода:
public interface class iTest
{
public:
generic <typename T>
virtual void AddCriteriaList(List<T> ^CriterionList);
};
generic <typename Q>
public ref class IUseInterface : iTest
{
public:
generic <typename T>
virtual void AddCriteriaList(List<T> ^CriterionList)
{
}
};
Я получаю сообщение об ошибке C3766: «IUseInterface» должен предоставить реализацию для метода интерфейса «void iTest :: AddCriteriaList (System :: Collections :: Generic :: List ^)»
Странная вещь: если я удалю универсальное ограничение (Q) на IUseInterface, ошибка исчезнет. Я не понимаю, как создание общего класса моего класса НИЧЕГО связано с универсальным типом для конкретной функции.
Есть идеи? Спасибо