Heim  >  Artikel  >  Backend-Entwicklung  >  Wie behebt man den Fehler „Konvertierung (nicht typisierter String-Konstante) in *String nicht möglich“ bei der Übergabe von Strings an Funktionen in Go?

Wie behebt man den Fehler „Konvertierung (nicht typisierter String-Konstante) in *String nicht möglich“ bei der Übergabe von Strings an Funktionen in Go?

Barbara Streisand
Barbara StreisandOriginal
2024-10-30 12:36:27832Durchsuche

How to Fix

Übergabe von String-Werten an Funktionsparameter

Die Fehlermeldung „Kann nicht (untypisierte String-Konstante) in *String [Duplikat] konvertieren“ weist auf einen hin Problem beim Versuch, eine Zeichenfolgenkonstante als Argument an eine Funktion zu übergeben, die einen Zeiger auf eine Zeichenfolge erwartet.

Um dieses Problem zu beheben, müssen Sie die Zeichenfolgenkonstante in einer Variablen speichern und dann die Adresse dieser Variablen übergeben zur Funktion. So können Sie den Code ändern, um den Fehler zu beheben:

<code class="go">persistentvolumeclaim := &apiv1.PersistentVolumeClaim{
    ObjectMeta: metav1.ObjectMeta{
        Name: "mysql-pv-claim",
    },
    Spec: apiv1.PersistentVolumeClaimSpec{
        StorageClassName: func(str string) *string { return &str }("manual"),
        },
}</code>

In diesem Code erstellen wir eine Funktion, die einen String-Parameter annimmt und einen Zeiger auf diesen String zurückgibt. Anschließend rufen wir diese Funktion auf und übergeben als Argument die String-Konstante „manual“. Der zurückgegebene Zeiger wird dann dem StorageClassName-Feld des apiv1.PersistentVolumeClaim-Objekts zugewiesen.

Das obige ist der detaillierte Inhalt vonWie behebt man den Fehler „Konvertierung (nicht typisierter String-Konstante) in *String nicht möglich“ bei der Übergabe von Strings an Funktionen in Go?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn