Übergabe einer nicht typisierten Zeichenfolge an einen typisierten Zeiger in Kubernetes PersistentVolumeClaim
Beim Versuch, einen Kubernetes PersistentVolumeClaim (PVC) zu erstellen und den StorageClassName-Parameter anzugeben, Entwickler Möglicherweise wird ein Fehler angezeigt, der besagt: „Konvertierung (nicht typisierter String-Konstante) in *String [Duplikat] nicht möglich.“ Dies ergibt sich aus einer Diskrepanz zwischen dem erwarteten Zeigertyp des Parameters und dem Versuch, eine untypisierte String-Konstante direkt zu übergeben.
Um dieses Problem zu lösen, muss man zunächst eine lokale String-Variable deklarieren und ihr die untypisierte String-Konstante zuweisen Es. Anschließend sollte die Adresse der lokalen String-Variable als Parameterargument mit dem &-Operator übergeben werden.
persistentvolumeclaim := &apiv1.PersistentVolumeClaim{
// Declare a string variable and assign the untyped constant
manualStr := "manual"
ObjectMeta: metav1.ObjectMeta{
Name: "mysql-pv-claim",
},
Spec: apiv1.PersistentVolumeClaimSpec{
StorageClassName: &manualStr, // Pass the address of the string local variable
},
}
Durch die Befolgung dieses Ansatzes stellt der Entwickler sicher, dass das Parameterargument mit dem erwarteten Zeigertyp übereinstimmt, wodurch der Konvertierungsfehler behoben wird und die erfolgreiche Erstellung des PVC ermöglicht wird.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3