Maison > Article > développement back-end > Similitudes et différences des fonctions de la méthode Golang
Similitudes et différences entre fonctions et méthodes en langage Go : Similitudes : La méthode de déclaration est la même (mot-clé func) La structure est la même (nom, liste de paramètres, type de retour) Peut renvoyer plusieurs valeurs Différences : Attribut : La méthode appartient à la structure Type, méthode d'appel globale de fonction : les méthodes sont appelées via des instances de structure et des opérateurs de points, et les fonctions appellent directement des récepteurs : les méthodes ont implicitement transmis des récepteurs d'instances de structure
Similarités et différences entre les fonctions et les méthodes dans Go langage
Dans le langage Go, les fonctions et les méthodes présentent des similitudes et des différences. Cet article explorera leurs similitudes et leurs différences en détail.
Similarités
func
. func
关键字声明。不同之处
func
(默认)、method
和 func method
。前两个修饰符等效,而第三个是冗余的。实战案例
考虑一个表示点的结构体:
type Point struct { x, y int }
我们可以定义一个 Move
方法来修改点的位置:
func (p *Point) Move(dx, dy int) { p.x += dx p.y += dy }
这里,Point
结构体会隐式地作为 Move
方法的接收者。
要使用 Move
方法,我们创建 Point
Les deux ont un nom, une liste de paramètres facultatifs et un type de retour. Valeur de retour :
Les fonctions et les méthodes peuvent renvoyer plusieurs valeurs. Différences🎜🎜🎜🎜🎜Attribution : 🎜La fonction est globale, tandis que la méthode appartient au type structure. 🎜🎜Méthode d'appel : 🎜Les fonctions sont appelées en utilisant leurs noms, tandis que les méthodes sont appelées en utilisant le nom de l'instance de structure et l'opérateur point. 🎜🎜Receiver : La méthode 🎜 a un paramètre spécial appelé récepteur, qui transmet implicitement l'instance de structure à la méthode. 🎜🎜Modificateurs : 🎜Les méthodes peuvent avoir les modificateurs suivants :func
(par défaut), method
et func method
. Les deux premiers modificateurs sont équivalents, tandis que le troisième est redondant. 🎜🎜Cas pratique🎜🎜🎜Considérons une structure représentant un point : 🎜p := Point{1, 2} p.Move(3, 4)🎜On peut définir une méthode
Move
pour modifier la position du point : 🎜rrreee🎜Ici , La structure Point
servira implicitement de récepteur de la méthode Move
. 🎜🎜Pour utiliser la méthode Move
, nous créons une instance Point
et appelons la méthode dessus : 🎜rrreee🎜🎜Summary🎜🎜🎜 Les fonctions et méthodes dans le langage Go sont puissant La structure est utilisée pour mettre en œuvre diverses fonctions. Les fonctions sont globales et peuvent être appelées indépendamment de tout type, tandis que les méthodes sont associées à un type de structure spécifique. Comprendre les similitudes et les différences entre eux est crucial pour tirer le meilleur parti du langage Go. 🎜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!