我有一个多线文本框,我可以在其中写一个密码 无人驾驶飞机 </跨度> 。
例:
10 levantar 10转到50,40 10转到20,20 10月5日 10 aterrar
我想创建一个列表…&lt; drone.Length; k ++) { listas_posicoes [k] = new List&lt; PointF&gt;(); if(linhas_separadas [0] == 无人驾驶飞机 </跨度> [K] .ip_drone_final) { 如果……
用一个 Queue<T> 代替 List<T>
Queue<T>
List<T>
然后你可以使用 .Dequeue() 函数获取当前命令,并将其从队列中删除。
.Dequeue()
为这种行为创建示例工作代码会变得非常复杂,需要一段时间,但基本模式看起来如下:
public abstract class Command { public abstract bool IsComplete { get; } public abstract void Execute(); } public static class CommandExecutor { public static Queue<Command> commands; public static Command current; public static void Update() { if (commands.Count > 0 && (current == null || current.IsComplete)) { current = commands.Dequeue(); current.Execute(); } } }
在哪里 Update() 方法在重复间隔中调用。
Update()