Local variable 'mydate' might not be initialized before accessing

前端 未结 1 501
我在风中等你
我在风中等你 2020-12-21 16:50

In my code i initilized Datetime like this

 DateTime myDate;

But when i try to access it then i got this error.

Loca

相关标签:
1条回答
  • 2020-12-21 17:39

    You declared it, but you didn't give it a value; you can't read a local variable until it is "definitely assigned". For a simple example:

    DateTime myDate = DateTime.UtcNow; // is assigned
    

    You don't have to give it a value right away... you can give it a value any time before you try to read it, including any branching etc that leaves no ambiguity that it has a value, for example:

    DateTime myDate;
    //....
    if(condition) {
        myDate = DateTime.UtcNow;
    } else {
        myDate = GetDateFromSomewhereElse();
    }
    Console.WriteLine(myDate);
    

    For contrast, fields (class variables) are automatically initialized to their all-zero value, and are treated as "definitely assigned" from the object's creation.

    0 讨论(0)
提交回复
热议问题