C#抽象泛型类创建派生实例

C#抽象泛型类创建派生实例,c#,generics,abstract,C#,Generics,Abstract,我有一个抽象类,另一个抽象类 public abstract class CConfig<T_RESP> where T_RESP : CLinkResp { public abstract Boolean Exec(out T_RESP oResp); } public class CConfigUnrecognized : CConfig<CLinkRespNone> { public override Boolean Exec(out CLinkR

我有一个抽象类,另一个抽象类

public abstract class CConfig<T_RESP> where T_RESP : CLinkResp
{
    public abstract Boolean Exec(out T_RESP oResp);
}

public class CConfigUnrecognized : CConfig<CLinkRespNone>
{
    public override Boolean Exec(out CLinkResp oResp)
    {
        ...
    }
}

public class CConfig...
在调用此关联的Exec(…)函数之后

但是,在这种情况下,我有一个错误: CS0029无法隐式地将类型CConfigunRecognited转换为CConfig

我可以使用抽象类和泛型类型只调用一个执行器吗

提前谢谢
Eric.

执行类似于
CConfig oConfig=new cconfiguncorrecogned()应该可以工作。你能给出一个完全重现你的问题的例子吗?这不应该编译,因为
cconfigunsrecogned.Exec
应该使用
clinkrespone
来覆盖
CConfig.Exec
。如果我解决了这个问题,那么肯定会编译。您发布的代码没有显示您遇到的确切问题。考虑一下你没有处理你认为你正在处理的<代码> CCONFIG <代码>的可能性。谢谢你的回答**朱哈尔:我不能写“代码> CCONFIG OCONFIG=新的CCONTUMIGN < <代码>因为OCOFIG已经存在。** Jeroen Mostert:我有很多开关案例创建了新的CCONFIG://创建对应的对象并执行它函数
switch(iType){//Kills case K_APP_KILL_STD:oConfig=new CConfigKillStd(oLstCmdLine);break;case K_APP_KILL_SMART:oConfig=new CConfigKillSmart(oLstCmdLine);break;case K_APP_KILL:…}/code>//我想执行一个Exec
oConfig.Exec()谢谢。。。
CConfig<CLinkRespNone> oConfig;
oConfig = new CConfigUnrecognized(oLstCmdLine);