Go 言語は、再利用可能なコード ブロックを定義するために、メソッドと関数という 2 つのメカニズムを提供します。メソッドは特定の型のデータを操作するために使用されます。定義する場合は、受信側の型を明示的に指定し、ドット演算子を使用して呼び出す必要があります。関数はグローバル操作に使用され、他のプログラミング言語と同様に定義され、括弧を使用して呼び出されます。
Go 言語のメソッドと関数の使用方法を調べる
はじめに
Go 言語は、再利用可能なコード ブロックを定義するために、メソッドと関数という 2 つのメカニズムを提供します。関数はグローバルであり、どこからでもアクセスできます。メソッドは特定の型に属しており、その型とその派生型に対してのみ呼び出すことができます。
メソッド
定義
メソッドの定義は関数と似ていますが、受信側の型は次のようにする必要があります。明示的に指定されています。レシーバーの型は関数名の前にあり、func
キーワードで区切られます。
// 定义方法 func (s *Stack) Push(v int) { s.elements = append(s.elements, v) }
Call
メソッドを呼び出すには、ドット演算子 (.
) を使用します。
// 调用方法 s.Push(10)
Function
定義
関数の定義は、func
キーワードと関数名を使用する他のプログラミング言語の定義と似ています。
// 定义函数 func max(a, b int) int { if a > b { return a } return b }
Call
関数の使用法()
呼び出し:
// 调用函数 result := max(10, 15)
実際のケース
次は、メソッドと関数を使用して実装されたスタック データ構造です。
type Stack struct { elements []int } // 方法:入栈 func (s *Stack) Push(v int) { s.elements = append(s.elements, v) } // 方法:出栈 func (s *Stack) Pop() int { if len(s.elements) == 0 { panic("Stack is empty") } v := s.elements[len(s.elements)-1] s.elements = s.elements[:len(s.elements)-1] return v } // 函数:计算最大值 func max(a, b int) int { if a > b { return a } return b } func main() { s := Stack{} // 入栈 s.Push(1) s.Push(2) s.Push(3) // 出栈 v1 := s.Pop() // 3 v2 := s.Pop() // 2 // 使用函数计算最大值 max := max(v1, v2) fmt.Println(max) // 输出:3 }
結論
メソッドと関数は再利用可能です。 Go 言語でのコードの重要な仕組み。メソッドは特定の型のデータを操作するために使用され、関数はグローバルに操作するために使用されます。効率的で保守可能な Go コードを作成するには、この 2 つの違いと使用シナリオを理解することが重要です。
以上がGo 言語のメソッドと関数の使用法を調べるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。