Maison >développement back-end >Golang >Comment transmettre des tranches de chaîne aux paramètres variadiques d'interface vides ?
Passer des tranches de chaîne à des paramètres variadiques d'interface vides
Passer une tranche de chaînes à un paramètre variadique d'interface vide pose un défi en raison de l'incapacité pour affecter directement la tranche au paramètre. Cela nécessite une copie fastidieuse avec des allocations multiples, ce qui en fait une solution inadaptée.
Approches alternatives :
Exemple de code :
<code class="go">// Converts a string slice to an empty interface slice func StringSliceToInterfaceSlice(values []string) []interface{} { var valuesInterface []interface{} for _, value := range values { valuesInterface = append(valuesInterface, value) } return valuesInterface } // Using reflection for generic slice conversion func ReflectSliceToInterfaceSlice(slice reflect.Value) []interface{} { var valuesInterface []interface{} for i := 0; i < slice.Len(); i++ { valuesInterface = append(valuesInterface, slice.Index(i).Interface()) } return valuesInterface }</code>
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!