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

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.

主站蜘蛛池模板: 舒兰市| 台前县| 昭觉县| 乌鲁木齐市| 靖西县| 红安县| 上思县| 永州市| 邵东县| 左云县| 铜川市| 辰溪县| 右玉县| 麦盖提县| 西乡县| 湛江市| 祁连县| 临洮县| 兴山县| 嘉义县| 成武县| 台山市| 乌恰县| 嘉善县| 通渭县| 维西| 五华县| 太白县| 通辽市| 沾化县| 安龙县| 邢台县| 阿鲁科尔沁旗| 巴彦淖尔市| 贵定县| 河间市| 永仁县| 青海省| 石屏县| 奉节县| 神农架林区|