Les fonctions et méthodes de Go sont similaires en syntaxe (mot-clé func, liste de paramètres et valeur de retour) et similaires en sémantique (saisie, réutilisabilité, modularité). Plus précisément, ils sont : Syntaxiquement : déclarés à l'aide du mot-clé func, acceptant les paramètres et renvoyant une valeur de retour. Sémantiquement : tous types ; réutilisable pour éviter la duplication de code ; aide à organiser le code dans une structure modulaire.
Similitudes des fonctions et des méthodes en Go
Dans le langage Go, les fonctions et les méthodes peuvent sembler similaires, mais elles présentent de subtiles différences de syntaxe et de sémantique.
Similitudes syntaxiques :
func
. Exemple de code :
// 定义一个函数 func add(a, b int) int { return a + b } // 定义一个方法 type MyType struct { Name string } func (m MyType) Greet() string { return "Hello, " + m.Name }
Similitudes sémantiques :
Cas pratique :
Créons un exemple de programme qui montre l'utilisation des fonctions et des méthodes :
package main import "fmt" // 定义一个函数 func calculateArea(r float64) float64 { return math.Pi * r * r } // 定义一个方法 type Circle struct { Radius float64 } func (c Circle) Area() float64 { return math.Pi * c.Radius * c.Radius } func main() { // 使用函数计算圆的面积 radius := 5.0 area := calculateArea(radius) fmt.Println("Area of circle using function:", area) // 使用方法计算圆的面积 circle := Circle{Radius: 5.0} area = circle.Area() fmt.Println("Area of circle using method:", area) }
Sortie :
Area of circle using function: 78.53981633974483 Area of circle using method: 78.53981633974483
Cet exemple de programme montre comment utiliser des fonctions et des méthodes pour calculer l'aire de un cercle.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!