-5

ユーザーが常に入力する必要がある基本的な単純なゲームを C++ で作成しようとしていますが、他のもの (動くオブジェクト(*)) の出力が常に必要です。

ユーザーが何も入力しなくても、オブジェクトは動き続けなければなりません。これには、2 つのループを同時に実行する必要がありますが、その方法はわかりません。

グラフィックはなく、基本的な記号と文字だけです。

4

1 に答える 1

1

2 つの同時ループは必要ありません。ループは 1 つだけにする必要があります。ループの反復ごとに、ゲームの出力を更新し、ユーザーが何らかの入力を行ったかどうかを確認します。彼が持っている場合は、それを読んで処理します。それ以外の場合は、次のループ反復を続行します。_kbhit 関数と _getch 関数を使用するのが簡単な方法ですが、最終的には ncurses や Win32 コンソール関数などのより高度なものを使用する必要があるでしょう。

while( !gameOver ) {
    DisplayGameState();

    if( _kbhit() ) {
        int c = _getch();
        ProcessInput( c );
    }
}
于 2012-12-30T15:45:59.483 に答える