Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通用-编译器警告CS0693或错误_C#_Generics_Compiler Errors_Warnings - Fatal编程技术网

C# 通用-编译器警告CS0693或错误

C# 通用-编译器警告CS0693或错误,c#,generics,compiler-errors,warnings,C#,Generics,Compiler Errors,Warnings,我有我的泛型类和两个方法,它们接受委托作为参数(泛型或非泛型) 我有,但是如果我从第二个方法中删除: public MyClass<TResult> ContinueWith(ThreadInfo<TResult>.Parameterized arg) public MyClass ContinueWith(ThreadInfo.Parameterized arg) 我不能再使用这个方法了,如果我尝试,我会得到一个编译器错误,因为编译器认为我想使用第一个方法 我如何解

我有我的泛型类和两个方法,它们接受委托作为参数(泛型或非泛型)

我有,但是如果我从第二个方法中删除

public MyClass<TResult> ContinueWith(ThreadInfo<TResult>.Parameterized arg)
public MyClass ContinueWith(ThreadInfo.Parameterized arg)
我不能再使用这个方法了,如果我尝试,我会得到一个编译器错误,因为编译器认为我想使用第一个方法

我如何解决这个问题?

听起来你真的很想:

(您可能想在此处返回一个
MyClass
,或者类似的东西-我们不知道您想要实现什么,这使得提供详细帮助变得很困难。)

听起来您确实想要:


(您可能希望在此处返回
MyClass
,或者类似的内容-我们不知道您想要实现什么,因此很难提供详细的帮助。)

您必须使用不同的参数名称。所以这取决于你想要实现什么

我想您需要这样的东西,返回类型为
MyClass
,您可以为
ThreadInfo
选择类型:

public MyClass ContinueWith(ThreadInfo.Parameterized arg)
{
//...
}
或者,如果只想在创建对象实例时选择类型:

public MyClass<TResult> ContinueWith(ThreadInfo<TResult>.Parameterized arg)
{
   //...
}
public MyClass ContinueWith(ThreadInfo.Parameterized arg)
{
//...
}

必须使用不同的参数名称。所以这取决于你想要实现什么

我想您需要这样的东西,返回类型为
MyClass
,您可以为
ThreadInfo
选择类型:

public MyClass ContinueWith(ThreadInfo.Parameterized arg)
{
//...
}
或者,如果只想在创建对象实例时选择类型:

public MyClass<TResult> ContinueWith(ThreadInfo<TResult>.Parameterized arg)
{
   //...
}
public MyClass ContinueWith(ThreadInfo.Parameterized arg)
{
//...
}
public MyClass<TResult> ContinueWith(ThreadInfo<TResult>.Parameterized arg)
public MyClass<T2> ContinueWith<T2>(ThreadInfo<T2>.Parameterized arg)
public MyClass<TResult> ContinueWith<T1>(ThreadInfo<T1>.Parameterized arg)
{
   //...
}
public MyClass<TResult> ContinueWith(ThreadInfo<TResult>.Parameterized arg)
{
   //...
}