editor php Yuzai memperkenalkan kepada anda "go: takrifan medan bagi bahagian selain daripada nama dan jenis". Dalam bahasa Go, selain nama dan jenis medan, atribut dan label lain boleh ditakrifkan untuk medan tersebut. Anda boleh mengawal keterlihatan dan akses medan dengan menambahkan sifat padanya. Dengan menambahkan label pada medan, anda boleh menambah metadata tambahan pada medan untuk menerangkan ciri medan. Takrifan medan ini boleh digunakan dalam struktur, memberikan lebih fleksibiliti dan skalabiliti untuk reka bentuk dan pelaksanaan program.
Saya melihat definisi struktur ini:
type Resource struct { Attrs []Attribute `parquet:",list"` ServiceName string `parquet:",snappy,dict"` Cluster *string `parquet:",snappy,optional,dict"` .... }
Saya faham dua bahagian pertama definisi medan (nama, jenis). Tetapi apakah maksud bahagian terakhir itu? Suka
parquet:",snappy,dict"
反引号中的文本描述了可以通过反射访问的 Go 结构标记(请参阅 reflect.StructTag
Penyelesaian
Teks dalam backticks menerangkan teg struktur Go yang boleh diakses melalui refleksi (lihat reflect.StructTag
encoding/json
的结构标记的使用对于 Marshal
和 Unmarshal
untuk butiran).
encoding/json
berguna untuk Marshal <p> dan fungsi <code>Unmarshal
. github.com/segmentio/parquet 有关-go
Contoh anda nampaknya berfungsi dengan pakej . Ia mempunyai beberapa dokumentasi ringkas tentang cara pakej mentafsir tag struktur
.snappy
dict
Kod lajur menggunakan pemampatan Snappy
可选
. list
menunjukkan bahawa lajur Parket adalah pilihan. Atas ialah kandungan terperinci go: Takrif medan bahagian selain daripada nama dan jenis. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!