【发布时间】:2012-05-23 09:43:15
【问题描述】:
我写了一个名为 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(方法); ,但是当调用具有参数和返回值的方法时(在我的情况下,ClassType 作为参数,Boolean 作为返回值),例如 functionQueue.Add(Method2(classObject));它没有编译,我错过了什么?
【问题讨论】: