如何使特定的部分功能运行并返回主循环

How to I make specific section function run and go back to the main loop?

本文关键字:运行 返回 循环 功能 何使特      更新时间:2023-10-16

我当前正在制作一个小型汽车模拟程序。我必须使汽车(单个字符(在数组中移动。假设我有一个有3个动作的函数。

void Move_around(){
      //first move
      Car.x++;
      //second move
      Car.y++;
      //3rd move
      Car.x++;
}

我希望汽车只能在主循环中移动一次。因此,一旦完成了第一步,它将返回主循环,然后返回函数((,然后进行第二步,依此类推。我应该怎么做?

一些可能的选项:

  1. 将功能分为三个小型,然后从主循环中呼叫它们。
  2. 使用Coroutines。
  3. 将坐标更改为事件,并将其放置在事件队列中。这次,函数本身只是从队列中获取事件并处理它。

您可以组合1.和3.将小功能用作队列中的事件。