我写了一个名为 QueueManager 的类:
class QueueManager
{
Queue functionsQueue;
public bool IsEmpty
{
get
{
if (functionsQueue.Count == 0)
return true;
else
return false;
}
}
public QueueManager()
{
functionsQueue = new Queue();
}
public bool Contains(Action action)
{
if (functionsQueue.Contains(action))
return true;
else
return false;
}
public Action Pop()
{
return functionsQueue.Dequeue() as Action;
}
public void Add(Action function)
{
functionsQueue.Enqueue(function);
}
public void Add(Func<CacheObject,Boolean> function)
{
functionsQueue.Enqueue(function);
}
当我创建这个类的一个实例并调用 Add 方法时,它适用于没有参数的函数,例如: functionQueue.Add(Method); ,但是当调用具有参数和返回值的方法时(在我的情况下,ClassType 作为参数,Boolean 作为返回值),例如 functionQueue.Add(Method2(classObject)); 它无法编译,我错过了什么?