C #: универсальные типы, которые имеют конструктор?
У меня есть следующий тестовый код C #:
class MyItem
{
MyItem( int a ) {}
}
class MyContainer< T >
where T : MyItem, new()
{
public void CreateItem()
{
T oItem = new T( 10 );
}
}
Visual Studio можетt скомпилировать, ошибка находится в строке, где 'новый» используется:
'T': cannot provide arguments when creating an instance of a variable type
Возможно ли в C # создать объект универсального типа с безпараметрическим конструктором? Это'Нет проблем сделать это в шаблонах C ++, поэтому ямне очень любопытно, почему я могусделать то же самое в C #. Может быть, некоторые дополнительныегде' требуется или синтаксис другой?