Default Constructor Constraint
Besides generic constraints expressed based on interfaces or base classes, a few other techniques are available. One is the new
constraint, expressing the requirement to have a default constructor available for a certain type parameter:
class Factory<T> where T : new() { ... public T CreateInstance() { return new T(); }}
Obviously, the preceding Factory<T>
type’s CreateInstance
method doesn’t provide any value over direct instantiation of an object from the outside. It’s merely a way to show how the expected constructor syntax can be used in conjunction with a type parameter as long as that parameter is properly constrained. From the outside, this type would be used ...
Get C# 5.0 Unleashed now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.