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 O’Reilly online learning.
O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.