Maison > développement back-end > Golang > le corps du texte

Pourquoi est-ce que j'obtiens une erreur de compilation « Trop d'arguments » pour DataResponse malgré la fourniture de tous les paramètres nécessaires ?

DDD
Libérer: 2024-11-01 02:16:28
original
786 Les gens l'ont consulté

Why Am I Getting a

Erreur du compilateur : trop d'arguments pour DataResponse malgré la fourniture de tous les paramètres requis

Dans le code fourni, une erreur se produit lors de la tentative de création d'une instance de la structure DataResponse et transmettez-le en paramètre à la fonction JSON. Le compilateur signale que trop d'arguments ont été donnés, même si les arguments nécessaires ont été fournis.

La structure DataResponse est définie comme :

<code class="go">type DataResponse struct {
    Status int         `json:"status"`
    Data   interface{} `json:"data"`
}</code>
Copier après la connexion

Elle prend deux paramètres : Statut de type int et Data de type interface{}.

Dans la fonction GetUser, une instance de DataResponse est créée comme suit :

<code class="go">resp := DataResponse(200, user)</code>
Copier après la connexion

Cependant, cette syntaxe est incorrecte. La façon correcte d'initialiser une structure à l'aide de la syntaxe des accolades est :

<code class="go">resp := DataResponse{200, user}</code>
Copier après la connexion

Les accolades indiquent que nous construisons une nouvelle structure et les valeurs fournies après chaque nom de champ sont attribuées aux champs correspondants.

Une fois la variable resp correctement initialisée, elle peut être passée en paramètre à la fonction JSON :

<code class="go">JSON(rw, resp)</code>
Copier après la connexion

Cela a résolu le problème du trop grand nombre d'arguments fournis à la structure DataResponse, permettant au programme de construire et d'utiliser correctement la structure pour la sérialisation JSON.

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!