0

メカニカル アームを表す C++ アプリケーションを設計しました。シミュレーションは while ループ内で実行されています。シミュレーションと対話する次のクラスのマザーボードがあります

class Motherboard
{
public:
void receiveInstruction(double angle);
}

シミュレーション中にキーボードの指示を待つイベント レシーバーもあります。クラス全体をコピーすることはしませんが、ここに興味深い部分があります (プレフィックス irr は、Irrlicht 3D エンジンを使用しているという事実に由来します)。

case irr::KEY_SPACE:
     // Do something
     return true;
case irr::KEY_RETURN:
     std::cin << angle
     motherboard->receiveInstruction(atof(angle))
     return true;

angle は char[] 型であり、atof は文字列を double に変換します。キーボードの RETURN キーを入力すると、角度命令の入力が完了するまでシミュレーションがフリーズします。

命令の入力中にシミュレーションを実行し、情報の入力が完了したらすぐに命令を送信するにはどうすればよいですか? スレッドは不可避ですか?(私はWindowsで実行しています)

よろしくお願いします

ヴィンセント

4

1 に答える 1