Vor- und Nachteile der implizierten Variablendeklaration var in C#

Was ist var? Das Schlüsselwort var wird in Variablendeklarationen anstelle eines Typs verwendet. Die technische Bezeichnung für var lautet: „implizit typisierte lokale Variablendeklaration“. Die Variable selbst ist nach wie vor statisch typisiert (der Typ wird beim Kompilieren des Codes festgelegt) und stark typisiert (der Typ kann nach seiner Deklaration nicht mehr verändert werden). Der Unterschied besteht darin, dass der Typ der Variable nicht mehr explizit im Quellcode angegeben wird. Stattdessen leitet der Compiler den Typ der Variablen je nach der Initialisierung für die Variable ab. Zum Beispiel:


In diesem Beispiel wird der maxValue mit einem Typ System.Int32 kompiliert, der customerFirstName ist ein System.String und stopwatch ist System.Timers.Timer. Falls es nicht klar sein sollte: Bei Verwendung von var zur Deklaration einer Variablen ist eine Initialisierung in der Deklaration zwingend erforderlich. Für diese Initialisierung gelten unter anderem folgende Einschränkungen:

  • Es muss sich um einen Ausdruck handeln, der einen Wert mit einem Typ zurückgibt; anonyme Funktionsdeklarationen (wie Lambdas) sind beispielsweise nicht gültig, aber Literals und Objektkonstruktoren sind zulässig.
  • ein Null-Typ darf nicht ausgegeben werden.
  • Ein Verweis auf die deklarierte Variable ist nicht möglich.
  • Nur eine Deklaration pro Anweisung ist zulässig; mehrere Deklarationen sind nicht erlaubt.

Mehr Details hierzu findet man unter Punkt 8.5.1 der Sprachspezifikation C# 3.0 (DOC-Format).

Page: 1 2

ZDNet.de Redaktion

Recent Posts

Infostealer: 53 Prozent der Angriffe treffen Unternehmensrechner

Der Anteil steigt seit 2020 um 34 Prozentpunkte. Allein 2023 erfasst Kaspersky rund 10 Millionen…

7 Minuten ago

Salesforce: Mit Einstein GPT zurück auf die Überholspur?

Salesforce forciert den Ausbau seiner Industry Clouds. Mit ihrem Prozesswissen könnten deutsche IT-Dienstleister davon profitieren.

21 Stunden ago

Neue Backdoor: Bedrohung durch Malvertising-Kampagne mit MadMxShell

Bisher unbekannter Bedrohungsakteur versucht über gefälschte IP Scanner Software-Domänen Zugriff auf IT-Umgebungen zu erlangen.

2 Tagen ago

BSI-Studie: Wie KI die Bedrohungslandschaft verändert

Der Bericht zeigt bereits nutzbare Angriffsanwendungen und bewertet die Risiken, die davon ausgehen.

3 Tagen ago

KI-Wandel: Welche Berufe sich am stärksten verändern

Deutsche sehen Finanzwesen und IT im Zentrum der KI-Transformation. Justiz und Militär hingegen werden deutlich…

3 Tagen ago

Wie ein Unternehmen, das Sie noch nicht kennen, eine Revolution in der Cloud-Speicherung anführt

Cubbit ist das weltweit erste Unternehmen, das Cloud-Objektspeicher anbietet. Es wurde 2016 gegründet und bedient…

3 Tagen ago