Maison >développement back-end >Golang >Pourquoi « bytes.Buffer n'implémente pas io.Writer » se produit-il et comment peut-il être corrigé ?
Lors de la tentative d'implémentation de l'interface io.Writer à l'aide d'un bytes.Buffer, on peut rencontrer le message d'erreur ""bytes.Buffer n'implémente pas io.Writer"." Cette erreur survient car bytes.Buffer n'implémente pas directement io.Writer. en raison de sa méthode Write nécessitant un récepteur de pointeur.
Pour résoudre ce problème, passez un pointeur vers le bytes.Buffer au lieu du tampon lui-même. Cela permet à la méthode Write d'être invoquée correctement. Voici un exemple corrigé :
import "bufio" import "bytes" func main() { var b bytes.Buffer foo := bufio.NewWriter(&b) // Pass a pointer to the buffer }
En passant un pointeur, la méthode Write de bytes.Buffer peut être utilisée comme prévu dans l'implémentation de l'interface io.Writer.
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!