相关疑难解决方法(0)

将Derived类的List <>转换为基类的List <>

我有两个类:一个基类(Animal)和一个从它派生的类(Cat).Base类包含一个虚拟方法Play,它将List作为输入参数.这样的东西

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication9
{
    class Animal
    {
        public virtual void Play(List<Animal> animal) { }
    }
    class Cat : Animal
    {
        public override void Play(List<Animal> animal)
        {
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            Cat cat = new Cat();
            cat.Play(new List<Cat>());
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

当我编译上面的程序时,我得到以下错误

    Error    2    Argument 1: cannot convert from 'System.Collections.Generic.List' to 'System.Collections.Generic.List'

反正有没有完成这个?

c# generics

24
推荐指数
3
解决办法
1万
查看次数

标签 统计

c# ×1

generics ×1