変数パラメータ
関数は、可変長引数リストは、このようなfmt.Println機能として入ってくるパラメータ、任意の数をサポートできるサポートすることは、可変長引数リストをサポートする機能です。
パッケージメイン インポート「FMT 」 FUNCのメイン(){ fmt.Println((追加)) fmt.Println(追加(1、2、3、4、5、6 )) // パラメータとしてミクロトーム ARR:= [] INT { 1、2、3、4、5、6 } fmt.Println(追加(ARR ...)) } // 関数の変数のパラメータ の追加(ARR ... FUNC int型)(結果int型){ fmt.Printf(" arr-> =%のTの\ nを入力" 、ARR) のため =:_、値範囲ARR { 結果 + = 値 } リターン結果 }
注意事項:
- 図1に示すように、関数は、可変パラメータの最大値を有することができ
- 関数パラメータの異なる複数種類存在する場合2、可変パラメータは、後ろでなければなりません
再帰関数の第二に、使用
関数は、その関数本体自体を呼び出すと、数学の問題解決のための再帰、再帰関数は、階乗など、非常に便利なので、上のフィボナッチ数を生成し、呼ばれています。
再帰的構成条件は、持っている必要があり,:
- サブ問題は、元の問題が同じもので、かつ容易になります。
- あなたは、無期限終了の必要性を自分自身を呼び出す再帰的な状態を終了することはできません
パッケージメイン インポート「FMT 」 FUNCのメイン(){ // スライスパラメータとして使用 fmt.Println(階乗(10 )) } // 関数の可変パラメータ FUNCの階乗(NUM INT)INT { IF NUM <= 0 { リターン 1 } リターン NUM *階乗(num- 1 ) }