鉴于:
class BaseClass {}
class DerivedClass : BaseClass {}
我想编写一个可以接受带有 BaseClass 参数的 Action 的函数。该函数将创建一个指定类型的对象并将其传递给 Action。
void MyFunction(Type type, Action<BaseClass> DoAction)
{
BaseClass obj = (BaseClass)Activator.CreateInstance(type);
DoAction(obj);
}
我想传入参数为 DerivedClass 的 AnotherFunction:
void AnotherFunction(DerivedClass x)
{
}
我应该如何调用 MyFunction?由于 AnotherFunction 参数,以下内容无效:
MyFunction(typeof(DerivedClass), AnotherFunction);