1

start()サイクルごとに実行する関数を持つコードがあります。pause()その中で私はあちこちで関数を呼び出します。

pause()いくつかの条件に応じて、私は今、私が呼ぶ方法をより賢くする必要があります。そして、ある場所では、他の場所では必要とされない条件で実行されます。

関数を呼び出す別の関数を作成する必要があることを理解していpause()ます。しかし、それは私が得た限りです。それは迷路のように感じ、私は道に迷っています。

これをコーディングする最良の方法は何ですか?プロはどのようにそれをしますか?

アップデート:

コードを追加しました。pauseActivator基本的に、私は複数のアクションを実行したいと思っています。

  1. 条件テスターとして機能し、trueまたはfalseを返します。

  2. 実際に一時停止関数を呼び出すこと。

多分私は私の関数にこれをさせるべきではありませんか?

void doPause() {
   //call system default pause function()
}

bool pauseOn = true;
string myPauseTime = "02:30";
bool pauseTimeReached = false;

bool pauseActivator() {
    if(pauseOn && systemTime() == myPauseTime){
        pauseTimeReached = true;
        doPause();
    } 
    return (pauseTimeReached);  
}

int start() {
    if(maxMovement > 500 && pauseActivator()) {
        if(maxA() && secondMovement==600) {
            pauseActivator();
        }
    }
    return(0);
}
4

1 に答える 1

0

一時停止にはDoPauseを使用し、一時停止状態を返す機能を使用することをお勧めします。実際に一時停止するという「隠れた」副作用を伴うテスト機能があると、問題が発生する可能性があります。

于 2013-01-24T16:47:44.827 に答える