Wenn man bedenkt, dass Werttypen standardmäßig immer initialisiert werden und niemals null, wäre es sinnvoll, Werttypen, die über Methoden an Methoden übergeben werden, zu null zu setzen?Überprüfte Werttypen, die über Parameter übergeben wurden
z. ist es wert
public void Method(Guid x)
{
if (x == null)
throw new ArgumentNullException();
...
}
Sie können Werttypen nicht mit null vergleichen. Sie erhalten einen Compilerfehler. Was Sie stattdessen tun können, vergleichen Sie es mit 'default (Guid)'. Es ist eine ähnliche Überprüfung, aber 'default (type)' ist normalerweise ein gültiger Wert (z. B. 'default (int)' ist 0), also müssen Sie vorsichtig sein. – itsme86
Was ist der Sinn des Null-Überprüfens von etwas, das nie null sein kann? Gibt es eine andere Frage hinter diesem? –
@Venky es ist * schon * ein Guid, was gibt es zu validieren? 'Parse' und' TryParse' werden verwendet, um * strings * in Guids –