У шаблонах C ++ можна вказати, що певний параметр типу є типовим. Тобто, якщо це явно не вказано, він буде використовувати тип T.
Чи можна це зробити або наблизити в C #?
Я шукаю щось на зразок:
public class MyTemplate<T1, T2=string> {}
Так що екземпляр типу, який явно не вказує T2
:
MyTemplate<int> t = new MyTemplate<int>();
По суті:
MyTemplate<int, string> t = new MyTemplate<int, string>();
Зрештою, я розглядаю випадок, коли існує шаблон, який досить широко використовується, але я розглядаю можливість розширення за допомогою додаткового параметра типу. Напевно, я міг би підклас, але мені було цікаво, чи є в цьому ключі інші варіанти.