gpt4 book ai didi

C# 7.0 模式匹配与新的输出参数混合

转载 作者:行者123 更新时间:2023-11-30 20:17:41 25 4
gpt4 key购买 nike

我的目标是在 Pattern matching 和 c# 7.0 中的新 out 变量的帮助下解析和打印传入变量。但是,该方法提示未初始化的局部变量“i”。不确定哪里出错了?

static void Main(string[] args)
{
var input = "23";
Print(input);
}

static void Print(object o)
{
if (o is int || (o is string && int.TryParse((string)o, out int i)))
Console.WriteLine(i.ToString());
}

最佳答案

i 不保证被设置。如果 o is inttrue,则不执行 if 的第二部分。

您也必须在第一个条件中分配 i:

if (o is int i || (o is string s && int.TryParse(s, out i))
{
Console.WriteLine(i.ToString());
}

关于C# 7.0 模式匹配与新的输出参数混合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43885773/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com