您能告诉我如何添加和删除队列中的点吗?因为出队返回隐式错误。FE
Queue Q = new Queue();
Point I = new Point(0,0);
Point J = new Point(0,0);
Q.Enqueue(J);
J = Q.Dequeue();
Queue.Dequeue
返回一个对象,您需要将其强制转换为正确的类型:
Queue Q = new Queue();
Point J = new Point(0, 0);
Q.Enqueue(J);
while (Q != null) //Loop is a problem--see below
{
J = (Point)Q.Dequeue();
}
或者,你可以使用的通用版本Queue
,Queue<T>
。由于队列就是您声明Dequeue
的类型,因此返回该类型的对象,因此不需要强制转换:
Point J2 = new Point(0, 0);
Queue<Point> Q2 = new Queue<Point>();
Q2.Enqueue(J2);
J2 = Q2.Dequeue();
最后,您的while
循环InvalidOperationException
在执行时会抛出一个,因为在第一个出队之后,您尝试在队列现在为空时再次出队。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句