Maison >développement back-end >Golang >golang nouvelle utilisation

golang nouvelle utilisation

PHPz
PHPzoriginal
2023-05-19 09:35:40879parcourir

Golang est un langage de programmation rapide, fiable et efficace En raison de ses excellentes performances et de sa maintenabilité, il est devenu un choix populaire dans le développement Web, la programmation serveur, le traitement du Big Data et d'autres scénarios. Dans cet article, nous présenterons l'utilisation du nouveau mot-clé dans Golang.

Dans Golang, new est un mot-clé utilisé pour allouer de la mémoire sur le tas et l'initialiser à zéro. Si vous êtes familier avec les idées de type C/C++, vous pouvez l'utiliser de manière analogue à la combinaison de la fonction malloc et de la fonction calloc.

Il est très simple d'ouvrir une mémoire de données à l'aide du mot-clé new. Il vous suffit d'appeler la nouvelle fonction et de transmettre le type de variable, par exemple :

var data *int           // 声明一个int类型指针变量data
data = new(int)         // 通过new函数在堆上分配一个整型数据内存,并将data指向这段内存

Grâce au code ci-dessus, nous avons réussi à allouer une mémoire de données entière sur le tas. Et attribuez son adresse à la variable de pointeur de données. Ensuite, nous pouvons attribuer et accéder aux données via le code suivant :

*data = 100             // 赋值操作,将整型数据100赋值给指针data指向的内存
fmt.Println(*data)      // 访问操作,打印指针data指向的内存中存储的数据,即100

A noter qu'en Golang, le mot-clé new renvoie un type de pointeur correspondant au type de variable. Par exemple, lors du passage de new(int) à une fonction, ce qui est réellement transmis est une valeur de pointeur de type int. Lors de son utilisation, vous devez déréférencer ce pointeur avec l'opérateur *.

En plus des types de données de base, le nouveau mot-clé peut également être utilisé pour créer des instances de types définis par l'utilisateur. Par exemple, ci-dessous, nous définissons un type de structure Personne, qui contient deux variables membres : nom et âge. Ensuite, nous créons une instance de ce type via le nouveau mot-clé et attribuons des valeurs aux variables membres.

type Person struct {
    name string
    age  int
}

p := new(Person)
p.name = "joseph"
p.age = 30
fmt.Println(p)

Grâce au code ci-dessus, nous avons réussi à créer une instance pour le type Personne et à effectuer avec succès les opérations d'affectation de variables de membre et d'impression. Il convient de noter que dans Golang, les variables membres de la structure sont accessibles de deux manières : p.name et (*p).name. La première est une manière simple d'écrire, et Golang la convertira automatiquement en méthode de déréférencement de la seconde. l’écriture. Les deux sont donc équivalents.

Pour résumer, le nouveau mot-clé est un outil d'allocation de mémoire très pratique et pratique dans Golang. Il peut rapidement allouer de la mémoire pour les types de variables sur le tas avec une seule ligne de code et l'initialiser à une valeur nulle. En utilisant le nouveau mot-clé de manière appropriée, nous pouvons effectuer une gestion de la mémoire rapidement et efficacement dans Golang.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn