2012-04-27 2 views

Antwort

9

Für jeden Referenztyp ist der Standardwert eine Null-Instanz. Für jeden Werttyp kann der Standardwert über Activator.CreateInstance abgerufen werden. Aber wenn Sie eine Variable haben instance genannt, die Ihnen eine eigentliche Instanz schlägt wollen anstatt eine Null-Referenz ... So, während Sie können dies tun:

public object GetDefaultValue(Type type) 
{ 
    return type.IsValueType ? Activator.CreateInstance(type) : null; 
} 

... es ist nicht wirklich klar, wie nützlich das ist. Dies ist der Standardwert Wert des Typs, der nicht derselbe ist wie eine Standard Instanz des Typs.

+0

Nein, ich bin in diesem Fall mit null zufrieden. Also verwende ich Activator für die Werttypen, ansonsten null. Danke Jon. –

Verwandte Themen