Heim >Backend-Entwicklung >C++ >Wann sollten Sie - und nicht - `var` für die Typinferenz in C#verwenden?
Die beste Praxis, Typen in Schlüsselwörtern zu verwenden
im C# var
c# 3.0 führte
var
var
unsachgemäße Verwendung
Verwenden var
verringert die Lesbarkeit und Wartung des Codes unter folgenden Umständen und erhöhen Sie die potenziellen Fehler:
var
Die vernünftige Verwendung von
<code class="language-csharp">foreach (var item in someList) { // 'item' 的类型不明确 // ... } var something = someObject.SomeProperty; // 'something' 的类型不明确 var something = someMethod(); // 'something' 的类型不明确</code>
kann unter folgenden Umständen die Lesbarkeit des Codes verbessern, ohne sich zu beeinträchtigen, ohne die Sicherheit der Typ zu beeinträchtigen: var
var
<code class="language-csharp">var l = new List<string>(); // `l` 的类型一目了然 var s = new SomeClass(); // `s` 的类型一目了然</code>Die Verwendung von
in der LINQ -Abfrage ist subtiler:
var
Obwohl der Compiler die Art von
var
<code class="language-csharp">var results = from r in dataContext.SomeTable select r; // `results` 的具体类型并非完全清晰</code>
results
Verwenden Sie
var
Dies ähnelt , und es besteht versteckte Gefahren von Sicherheitsarten. Beim Aufrufen der schweren Lastmethode ist es einfach, den Typ des nicht zusammengestellten Typs zu übergeben, was zu Laufzeitfehlern führt.
und Geben Sie Sicherheit var
<code class="language-csharp">var results = from item in someList where item != 3 select item;</code>Obwohl den starken C#-Typ beibehält, kann die Verstecktypinformationen Probleme verursachen, insbesondere wenn die Methode überlastet ist, kann der Compiler möglicherweise nicht in der Lage sein, den Typ, der während der Kompilierung nicht übereinstimmt, nicht erfassen.
foreach (var item in someList)
Schlussfolgerung
Schlüsselwörter können unter geeigneten Umständen die Lesbarkeit und Einfachheit des Codes verbessern, muss jedoch mit Vorsicht verwendet werden. Wenn der Typ nicht klar ist, kann das Risiko erhöht werden und die Verwendung von var
sollte vermieden werden. Für LINQ -Abfragen und LINQ für Objekte muss die Wichtigkeit des Abwägens der Lesbarkeit und der Type -Sicherheit ein Gewicht sein. Verwenden Sie , um den Code klarer und prägnanter zu gestalten und gleichzeitig die Robustheit und Wartung des Programms aufrechtzuerhalten.
Das obige ist der detaillierte Inhalt vonWann sollten Sie - und nicht - `var` für die Typinferenz in C#verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!