Почему я не могу вернуть T в методе Generic?C#

Место общения программистов C#
Ответить
Гость
 Почему я не могу вернуть T в методе Generic?

Сообщение Гость »


Следующий код говорит, что я не могу вернуть объект типа Сертификация? Почему бы и нет, поскольку это определение Т?

public T BuildList(список T, модель AttributeModel), где T: сертификация { вернуть новую сертификацию("", "", ""); } Обновление:

Меня попросили объяснить, почему я считаю, что это должно сработать. Справедливый вопрос.

Я прочитал «где T : Сертификация», что означает, что метод также можно прочитать как:

public Certification BuildList (список сертификатов, модель AttributeModel) Итак, должно потребоваться возврат объекта типа Certification. Я, очевидно, не понимаю здесь чего-то базового в дженериках. В чем я не прав?

Обновление 2:

Я попробовал следующее для @DStanley — это тоже не скомпилируется:
публичный класс Animal { public T BuildList(список T, модель AttributeModel), где T: Animal { вернуть новое животное(); } }
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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