Was die reflektierende Äquivalent ist:Erstellen eines Standard-Instanz vom Typ
default(object); //null
Wenn ich nicht die Art erst zur Laufzeit haben z.B.
Was die reflektierende Äquivalent ist:Erstellen eines Standard-Instanz vom Typ
default(object); //null
Wenn ich nicht die Art erst zur Laufzeit haben z.B.
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.
Nein, ich bin in diesem Fall mit null zufrieden. Also verwende ich Activator für die Werttypen, ansonsten null. Danke Jon. –