Наследуйте общий класс и используйте конкретные параметры с ключевым словом ref.C#

Место общения программистов C#
Anonymous
Наследуйте общий класс и используйте конкретные параметры с ключевым словом ref.

Сообщение Anonymous »

Я получаю ошибку CS1503 для следующего кода:

Код: Выделить всё

public class ClassUserBase
where T1 : struct
where T2 : struct
{
public virtual int method1(ref ClassParmBase parm)
{
return 1;
}
}

public class ClassUser1 : ClassUserBase
{
public override int method1(ref ClassParm1 parm)
{
int nRet = base.method1(ref parm); //  //edited: typo here, this seems work!,
{ }

public enum EnumType1 { }

public enum EnumType2 { }

(отредактировано для компиляции)
Разрешено ли такое использование? Есть ли какой-нибудь способ сделать ClassParm1 пригодным для использования в базовом классе?
На самом деле я намеревался переопределить метод1, но это было невозможно. Полагаю, это запрещено по той же причине.
Сообщение об ошибке: (переведено)

параметр 1: из «ClassParm1» в «ClassParmBase» невозможно преобразовать.


Подробнее здесь: https://stackoverflow.com/questions/797 ... ef-keyword

Вернуться в «C#»