- Mastering Visual Studio 2017
- Kunal Chowdhury
- 287字
- 2021-07-15 17:26:39
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); }
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.
- 大學(xué)計(jì)算機(jī)基礎(chǔ)(第二版)
- The Complete Rust Programming Reference Guide
- Visual FoxPro程序設(shè)計(jì)教程(第3版)
- 測試驅(qū)動(dòng)開發(fā):入門、實(shí)戰(zhàn)與進(jìn)階
- Python測試開發(fā)入門與實(shí)踐
- AIRAndroid應(yīng)用開發(fā)實(shí)戰(zhàn)
- 面向?qū)ο蟪绦蛟O(shè)計(jì)(Java版)
- Linux Shell核心編程指南
- Mastering Akka
- Mastering Web Application Development with AngularJS
- INSTANT Silverlight 5 Animation
- Node學(xué)習(xí)指南(第2版)
- App Inventor少兒趣味編程動(dòng)手做
- 遠(yuǎn)方:兩位持續(xù)創(chuàng)業(yè)者的點(diǎn)滴思考
- Web開發(fā)的平民英雄:PHP+MySQL