C产品在市场上有哪些独特优势?
- 内容介绍
- 文章标签
- 相关推荐
本文共计480个文字,预计阅读时间需要2分钟。
这个方法使用`out`参数的缺点比较多,例如:
1. 当使用`int`类型和`TryParse`函数尝试转换字符串时,代码如下:csharpvar str=123;if (int.TryParse(str, out var _)){ var n=_;}
2.编译会失败,并显示错误`CS0103`:`The name '_' does not exist in the current context`。
3. 原因是`out`参数在`int.TryParse`中并未被正确处理。
这个方法用的比较多的是在 out 参数,如使用 int 的尝试转换函数
var str = "123"; if (int.TryParse(str, out var _)) { var n = _; }
编译是不通过的,会出现 error CS0103: The name '_' does not exist in the current context 上面的代码还可以去掉 var 代码
var str = "123"; if (int.TryParse(str, out _)) { //var n = _; }
在 ValueTuple 也是很多的使用
var db = ("林德熙", "逗比"); var (lindexi, _) = db;
上面代码表示只拿出 lindexi 而 逗比是不拿出来的,虽然使用了下划线,但是如果在下面要使用下划线是无法编译通过
从这个特性可以推出在辣么大的使用,请看代码
Action<int> f = _ => { var n = 2; };
这样写表示不理会第一个参数,虽然这样写和下面代码是不等价的
Action<int> f = delegate { var n = 2; };
但是从约定上,使用下划线表示忽略的代码
总结
以上所述是小编给大家介绍的C# 7.0 使用下划线忽略使用的变量的原因分析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对易盾网络网站的支持!
本文共计480个文字,预计阅读时间需要2分钟。
这个方法使用`out`参数的缺点比较多,例如:
1. 当使用`int`类型和`TryParse`函数尝试转换字符串时,代码如下:csharpvar str=123;if (int.TryParse(str, out var _)){ var n=_;}
2.编译会失败,并显示错误`CS0103`:`The name '_' does not exist in the current context`。
3. 原因是`out`参数在`int.TryParse`中并未被正确处理。
这个方法用的比较多的是在 out 参数,如使用 int 的尝试转换函数
var str = "123"; if (int.TryParse(str, out var _)) { var n = _; }
编译是不通过的,会出现 error CS0103: The name '_' does not exist in the current context 上面的代码还可以去掉 var 代码
var str = "123"; if (int.TryParse(str, out _)) { //var n = _; }
在 ValueTuple 也是很多的使用
var db = ("林德熙", "逗比"); var (lindexi, _) = db;
上面代码表示只拿出 lindexi 而 逗比是不拿出来的,虽然使用了下划线,但是如果在下面要使用下划线是无法编译通过
从这个特性可以推出在辣么大的使用,请看代码
Action<int> f = _ => { var n = 2; };
这样写表示不理会第一个参数,虽然这样写和下面代码是不等价的
Action<int> f = delegate { var n = 2; };
但是从约定上,使用下划线表示忽略的代码
总结
以上所述是小编给大家介绍的C# 7.0 使用下划线忽略使用的变量的原因分析,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对易盾网络网站的支持!

