Heim >Backend-Entwicklung >C++ >Wie kann ich programmgesteuert den Standardwert eines Typs in C#erhalten?

Wie kann ich programmgesteuert den Standardwert eines Typs in C#erhalten?

DDD
DDDOriginal
2025-01-26 10:01:11246Durchsuche

How Can I Programmatically Get the Default Value of Any Type in C#?

programmatisches Äquivalent zum Standard (Typ)

Wenn Sie die Attribute reflektierter iterativer Typen verwenden und bestimmte Typen auf seine Standardwerte festlegen, sollten Sie eine prägnantere Methode verwenden als die explizite Standardeinstellungen für Typ -basierte ausdrückliche Standardeinstellungen. Gibt es in diesem Fall eine Programmisierung, die in solchen Szenen verwendet werden kann, die dem Standard (Typ) entsprechen?

Lösung:

Um dies zu erreichen, können die folgenden Optionen verwendet werden:

Werttyp:
  1. Verwenden Sie die Methode , um ein neues Beispiel zu generieren, das normalerweise den Standardwert des Werttyps liefert.

    • Activator.CreateInstance Zitattyp:
  2. Rückgeben Sie einfach

    , da der Referenztyp standardmäßig standhält.

    • null Beispielcode: null
    Das folgende Code -Beispiel zeigt, wie Sie den Standardwert durch Programmierung erhalten:

<:> Hinweis:

In einer neueren .NET -Version (z. B. .NET Standard) wurde

als

geschrieben.
<code class="language-csharp">public static object GetDefault(Type type)
{
    if (type.GetTypeInfo().IsValueType)
    {
        return Activator.CreateInstance(type);
    }
    return null;
}</code>

Das obige ist der detaillierte Inhalt vonWie kann ich programmgesteuert den Standardwert eines Typs in C#erhalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn