官术网_书友最值得收藏!

New changes with the out variables

Currently in C#, we need to first declare a variable before we pass it as an out parameter to a method. You can use a var while declaration if you initialize them in the same line, but when you don't want to initialize explicitly, you must declare them, specifying the full type:

    // predeclaration of 'out' variable was mandatory 
    int result; // or, var result = 0; 
    string value = "125"; 
 
    int.TryParse(value, out result); 
 
    Console.WriteLine("The result is: " + result); 

In C# 7.0, the out variables can be declared right at the point where they are passed as an out parameter to a method. You can now directly write int.TryParse(value, out int result); and get the value of the out parameter, to use it in the scope of the enclosing block:

    static void Main(string[] args) 
    { 
      string value = "125"; 
      int.TryParse(value, out int result); 
      Console.WriteLine("Result:  " + result); 
    } 

You can also use var instead of a strong type declaration, like int.TryParse(value, out var result);, and the compiler will define it properly:

    static void Main(string[] args) 
    { 
      string value = "125"; 
      int.TryParse(value, out var result); 
      Console.WriteLine("Result:  " + result); 
    } 
To use an out parameter, both the method definition and the calling method must explicitly use the out keyword.

If you have already written code in the existing way of declaration before passing the out parameter to a method, Visual Studio 2017 will allow you to leverage this new feature of C# 7.0 from the light bulb icon:

From the popup, you can fix all the similar occurrences, in the current document, the entire project, or at the solution level, by clicking the links highlighted as shown in the preceding screenshot.

主站蜘蛛池模板: 张家川| 南昌县| 湛江市| 高雄市| 南宁市| 东乌珠穆沁旗| 邵武市| 依安县| 房山区| 宜兰县| 文化| 永德县| 合肥市| 墨玉县| 监利县| 灯塔市| 黄梅县| 桃园市| 饶阳县| 永定县| 伊宁市| 锡林郭勒盟| 焦作市| 兰坪| 监利县| 焉耆| 灵宝市| 利川市| 竹山县| 罗江县| 镇康县| 天水市| 大兴区| 秦皇岛市| 西贡区| 三河市| 邮箱| 乡宁县| 平定县| 禄丰县| 巨鹿县|