1
型の文字列ポインタの参照値を空文字列に設定するにはどうすればよいですか? この例を考えてみましょう:Golang:空文字列にnil文字列ポインタを設定する
package main
import (
"fmt"
)
type Test struct {
value *string
}
func main() {
t := Test{nil}
if t.value == nil {
// I want to set the pointer's value to the empty string here
}
fmt.Println(t.value)
}
私は無駄に&
と*
オペレータのすべての組み合わせを試してみた:
t.value = &""
t.value = *""
&t.value = ""
*t.value = ""
は明らかにそれらのいくつかは愚かですが、私は害を見ていません試してみる 私はまた、reflect
とSetString
使用してみました:
reflect.ValueOf(t.value).SetString("")
を、これはコンパイルエラーに
パニックを与える:反映:reflect.Value.SetStringアドレス不能値Iが想定してい
を使用してGoの文字列は不変であるからです