gpt4 book ai didi

c# - 引起 C# "Espression denotes a ' 类型参数的解决,其中需要 'variable'、 'value' 或 'type'”

转载 作者:行者123 更新时间:2023-11-30 13:40:05 27 4
gpt4 key购买 nike

我有以下代码在我的 C# 泛型函数中产生编译问题:

static void solve () {
int[] vals = RA<int>();
}

和我的 RA 函数:

static T[] RA<T> () {
return Console.ReadLine ().Split ().Select (v => T.Parse (v)).ToArray ();
}

给我以下错误:

Espression denotes a 'type parameter', 
where a 'variable', 'value' or 'type' was expected

社区可以帮助我调试或理解这个问题并解决它吗?

最佳答案

你必须重新考虑这一点——你不能在类型参数上调用静态方法。一方面,编译器无法在编译时解析它们。参见 Eric Lippert's blog post了解更多详情。

你可能想把它改成这样的:

static T[] RA<T>(Func<string, T> projection)
{
return RL().Split().Select(projection).ToArray();
}

关于c# - 引起 C# "Espression denotes a ' 类型参数的解决,其中需要 'variable'、 'value' 或 'type'”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9001743/

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