子関数で制御を返す
親関数から子関数を呼び出す場合、通常、実行は子の呼び出し後の親関数で継続されます。関数が戻ります。ただし、状況によっては、子関数呼び出しの結果に基づいて親関数での実行を終了する必要がある場合があります。
次の例を考えてみましょう。
func apiEndpoint() { if false { apiResponse("error") // Call child function // Expect to end execution after apiResponse() call } apiResponse("all good") } func apiResponse(message string) { // Returns message to user via JSON }
この例では、 apiResponse 関数が「エラー」メッセージとともに呼び出された場合、apiEndpoint 関数が実行を終了するようにします。ただし、このままのコードではこの目標は達成できません。
子関数の制限
ここでの重要な制限は、子関数がその実行を制御できないことです。親関数。親関数は、独自の実行フローを決定します。
代替ソリューション
目的の動作を実現するには、次のような代替方法があります。
func apiEndpoint() { if false { apiResponse("error") } else { apiResponse("all good") } }
func apiEndpoint() string { if false { return apiResponse("error") } return apiResponse("all good") } func apiResponse(message string) string { return message }
以上が子関数は親関数の実行にどのような影響を与えるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。