Je suis nouveau dans le langage Go, et je n'ai qu'une expérience minimale en C/C++, donc naturellement je me bats avec l'idée de savoir quand utiliser des pointeurs et quand ne pas utiliser de pointeurs. Bien que cette question puisse être considérée comme ouverte, je me demande quelles sont les lignes directrices sur le moment de retourner des structures et quand renvoyer des pointeurs (et de manière équivalente quand accepter des structures/pointeurs comme arguments).
D'après ce que je peux deviner, les affirmations suivantes sont vraies:
Mes hypothèses sont-elles correctes? Ou est-ce que je manque la marque sur les pointeurs?
Vos hypothèses sont correctes. À propos de # 3, Go est un langage simultané et le passage par référence dans les goroutines les fait tous lire la même structure qui est sûre, mais leur fait également modifier la même structure qui est dangereuse.