gpt4 book ai didi

c# - 了解 C# 的类型转换

转载 作者:行者123 更新时间:2023-11-30 23:14:15 25 4
gpt4 key购买 nike

<分区>

我不明白为什么这不起作用:

类:

public abstract class BaseObj
{

public bool IsValid => GetValidationErrors().Count == 0;
}

public class BaseObjWithId: BaseObj
{
public int Id { get; set; }
}

public class BaseReference<T> : BaseObj where T : BaseObjWithId
{

public T ObjReference { get; set; }

}

public class Foo: BaseObjWithId
{
public string Name{get;set;}
}

public class FooRef : BaseReference<Foo>
{

}

代码声明:

    BaseReference<BaseObjWithId> foo= new FooRef();

Error CS0029 Cannot implicitly convert type...

这个有效:

    BaseReference<Foo> foo= new FooRef();

但我不明白为什么,因为 Foo 是一个 BaseObjWithId...

谢谢你的解释

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