我有一个基类和一些派生类
public class MyBase {...}
public class MyClass1 : MyBase {...}
public class MyClass2 : MyBase {...}
Run Code Online (Sandbox Code Playgroud)
现在我想列出这些派生类(类!!不是类的实例!),然后我想随机创建这些派生类之一的一个实例.
这是如何运作的??
这里我想要的伪C#:)
List<MyBase> classList = new List<MyBase> () { MyClass1, MyClass2, MyClass3, ...}
MyBase randomInstance = new classList[random.Next(0,classList.Count-1)]();
Run Code Online (Sandbox Code Playgroud)
(不幸的是,这个List构造需要MyBase的实例而不是类名)
我有一个派生自List的类.我无法在我的类的实例上使用intersect().为什么?
我有的是:
class myList : List<int>
{ ... }
Run Code Online (Sandbox Code Playgroud)
我尝试做的是
myList list1 = new some initialization...
myList list2 = new some initialization...
myList list3 = list1.Intersect(list2);
Run Code Online (Sandbox Code Playgroud)
这不起作用.编译器抱怨类似"Error 1 Typ"System.Collections.Generic.IEnumerable"无法隐式转换为"myList"."
我不明白这里有什么类型的混淆:(我已经在我的Intersect示例中尝试了一些演员,但它没有用.
任何人都可以解释一下这里的问题是什么,我做错了什么?
谢谢!