var

C Sharp Programming · Wikibooks

0%

Contents

    Text

    Size
    100%
    Theme
    Typeface
    Line length
    Spacing

    From Wikibooks, under CC BY-SA 4.0, as the source states it. This page at Wikibooks.

    var

    The var keyword can be used in place of a type when declaring a variable to allow the compiler to infer the type of the variable. This feature can be used to shorten variable declarations, especially when instantiating generic types, and is even necessary with LINQ expressions (since queries may generate very complex types).

    The following:

    int num = 123;
    string str = "asdf";
    Dictionary<int, string> dict = new Dictionary<int, string>();
    

    is equivalent to:

    var num = 123;
    var str = "asdf";
    var dict = new Dictionary<int, string>();
    

    var does not create a "variant" type; the type is simply inferred by the compiler. In situations where the type cannot be inferred, the compiler generates an error:

    var str; // no assignment, can't infer type
    
    void Function(var arg1, var arg2) // can't infer type
    {
        ...
    }
    



    C# Keywords
    abstract as base bool break
    byte case catch char checked
    class const continue decimal default
    delegate do double else enum
    event explicit extern false finally
    fixed float for foreach goto
    if implicit in int interface
    internal is lock long namespace
    new null object operator out
    override params private protected public
    readonly ref return sbyte sealed
    short sizeof stackalloc static string
    struct switch this throw true
    try typeof uint ulong unchecked
    unsafe ushort using var virtual
    void volatile while
    Special C# Identifiers (Contextual Keywords)
    add alias async await dynamic
    get global nameof partial remove
    set value when where yield
    Contextual Keywords (Used in Queries)
    ascending by descending equals from
    group in into join let
    on orderby select where

    Note: Var is not a keyword