Golangのvolatile関数

Go の可変長関数を使用すると、関数に可変数の引数を渡すことができます。この機能は、渡す引数の数が事前にわからない場合に便利です。Golang の可変引数関数は、 同じ型の複数の引数を受け入れ、引数なしも含め、任意の数の引数で呼び出すことができます。

Golangのvolatile関数

package main
import "fmt"

// Hàm Variadic tính tổng
func sum(nums ...int) int {
    total := 0
    for _, n := range nums {
        total += n
    }
    return total
}

func main() {
    fmt.Println("Sum of 1, 2, 3:", sum(1, 2, 3))
    fmt.Println("Sum of 4, 5:", sum(4, 5))
    fmt.Println("Sum of no numbers:", sum())
}

結果:

Sum of 1, 2, 3: 6
Sum of 4, 5: 9
Sum of no numbers: 0

構文:

func functionName(parameters ...Type) ReturnType {
    // Code
}

上記の構文では、

  • parameters ...Type関数が Type 型の可変数の引数を受け入れることができることを示します。
  • 関数内の引数にはスライスとしてアクセスできます。

Golangで不確実な関数を使う方法

可変個引数関数の使用

可変引数関数を定義するときは、上記の例のように、引数の型の後に省略記号 (...) を付けて指定します。関数内では、これらの引数はスライスとして考えることができます。

可変引数関数の呼び出し

0 個を含む任意の数の引数を使用して可変長関数を呼び出すことができます。この関数は引数をスライスとして扱います。

例えば:

package main
import "fmt"

func sum(nums ...int) int {
    total := 0
    for _, n := range nums {
        total += n
    }
    return total
}

func main() {
    fmt.Println("Sum of 1, 2, 3:", sum(1, 2, 3))
    fmt.Println("Sum of 4, 5:", sum(4, 5))
    fmt.Println("Sum of no numbers:", sum())
}

結果:

Sum of 1, 2, 3: 6
Sum of 4, 5: 9
Sum of no numbers: 0

異なるパラメータを持つ可変長関数

関数内で可変長パラメータと通常のパラメータを組み合わせることもできます。可変長パラメータは常に最後のパラメータである必要があります。

例えば:

package main
import "fmt"

// Hàm Variadic tính tổng
func sum(nums ...int) int {
    total := 0
    for _, n := range nums {
        total += n
    }
    return total
}

// Hàm với tham số thông thường và variadic 
func greet(prefix string, nums ...int) {
    fmt.Println(prefix)
    for _, n := range nums {
        fmt.Println("Number:", n)
    }
}
func main() {
    greet("Sum of numbers:", 1, 2, 3)
    greet("Another sum:", 4, 5)
    greet("No numbers sum:")
}

結果:

Sum of numbers:
Number: 1
Number: 2
Number: 3
Another sum:
Number: 4
Number: 5
No numbers sum:

可変個引数関数の制限

  • 可変個引数関数には可変個引数パラメータを 1 つだけ指定でき、そのパラメータは最後のパラメータである必要があります。
  • 単一の関数定義に複数の可変長パラメータを含めることは��きません。
Sign up and earn $1000 a day ⋙

Leave a Comment

帯分数とは何ですか?

帯分数とは何ですか?

帯分数は整数と分数の組み合わせです。帯分数の小数部は常に 1 未満になります。

お金持ちのように旅行するためのヒント

お金持ちのように旅行するためのヒント

旅行の際は予算が限られていますか?心配しないでください。有名な旅行アドバイザーが共有する以下のヒントは、お金持ちのように旅行するのに役立ちます。

モバイル向けベストObsidianプラグイン7選

モバイル向けベストObsidianプラグイン7選

インターフェースを微調整し、Obsidian をより効率的に実行できるようにするだけでなく、より豊富なメモ作成ツールも提供します。

ぼやけた外部ディスプレイを修正する方法

ぼやけた外部ディスプレイを修正する方法

外部ディスプレイが暗いと、生産性が低下し、目の疲れを引き起こす可能性があります。幸いなことに、ぼやけた画面を修正するためにできることがいくつかあります。

男性と女性のシンボルはどこから来たのでしょうか?

男性と女性のシンボルはどこから来たのでしょうか?

今日人気の男性と女性のシンボルの意味は、すべての人に知られているわけではないかもしれません。男性と女性のシンボルについてもっと学びましょう!

ブラックホールの謎の歴史が科学者によって解明された

ブラックホールの謎の歴史が科学者によって解明された

ブラックホールに関するよくある誤解の一つは、ブラックホールが物質を飲み込むだけでなく、その物質の履歴も飲み込むというものです。ブラックホールの歴史に関する真実がついに解明されました。

複数の Adob​​e Mobile アプリは必要ありません。必要なのは Adob​​e Express だけです。

複数の Adob​​e Mobile アプリは必要ありません。必要なのは Adob​​e Express だけです。

Adobe は携帯電話向けに 4 つ以上の特定の写真編集アプリを提供していますが、どれも非常に似ているため、どれが本当に必要なのか判断するのは困難です。

普通のテレビをスマートテレビに変える5つのガジェット

普通のテレビをスマートテレビに変える5つのガジェット

通常のテレビでも、いくつかのガジェットを使って新しい機能を学習し、数分で高価なスマートテレビよりも優れたものになります。

パナソニックエアコンのリモコンの使い方

パナソニックエアコンのリモコンの使い方

パナソニックのエアコンのリモコンを正しく使用することで、エアコンの機能を最大限に活用できるようになります。

ジェミニは写真、ファイル、YouTubeに関するトークライブを展開

ジェミニは写真、ファイル、YouTubeに関するトークライブを展開

Gemini Live は「ライブで話す」機能を追加し、今後は Android デバイスでより広範囲に展開される予定です。以前は、Gemini Liveは音声入力のみに対応していましたが、「Talk Live about」ではコンテンツのアップロードが拡張されました。

Microsoft Copilot が徹底的な調査でアップグレード

Microsoft Copilot が徹底的な調査でアップグレード

Microsoft はついに、Copilot AI に Deep Research 機能を導入します。これにより、ユーザーはあらゆるトピックについて徹底的かつ多段階的な調査を実施できます。

Photoshopで写真を鉛筆スケッチ風に加工する方法

Photoshopで写真を鉛筆スケッチ風に加工する方法

このチュートリアルでは、Adobe Photoshop を使用して写真を簡単に鉛筆スケッチに変換する方法を説明します。

Golangのvolatile関数

Golangのvolatile関数

Go の可変長関数を使用すると、関数に可変数の引数を渡すことができます。 Golang の volatile 関数について知っておくべきことはすべてここにあります。

Lien Quan Mobileでカラー文字を書く方法

Lien Quan Mobileでカラー文字を書く方法

Lien Quan Mobile で色付きのテキストを書き込むには、この記事の手順に従ってください。 LQモバイルのカラー文字がより目立つようになります。

決して終了してはいけないタスクマネージャーのプロセス7つ

決して終了してはいけないタスクマネージャーのプロセス7つ

Windows 10 タスク マネージャーのリストの下部にある Windows システム プロセス セクションには、コンピューターが適切に動作するために不可欠ないくつかの重要なプロセスが含まれています。