Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk menukar jenis kepada jenis baharu berdasarkannya?

Bagaimana untuk menukar jenis kepada jenis baharu berdasarkannya?

WBOY
WBOYke hadapan
2024-02-06 10:30:11509semak imbas

Bagaimana untuk menukar jenis kepada jenis baharu berdasarkannya?

Kandungan soalan

Saya mencipta jenis baharu untuk menambah kaedah tersuai khusus untuk keperluan apl saya

type content html.node

Saya tahu saya boleh memperoleh html.node daripada content 类型的 content var untuk melakukan ini

node := html.node(content)

Tetapi, adakah html.node 类型的 var,如何转换为 content?

Saya mendapat tahu bahawa melakukan perkara berikut...

ndoe, err := htmlquery.loadurl(page.url)

content := content(node)

...tak boleh kerja. Ia memberi saya ralat ini:

cannot convert doc (variable of type *html.Node) to type Content

Jawapan betul


https://www.php.cn/link/b14fba037d119d307e3b6ceb2a9fbb31

Jika nod adalah html.node gunakan:

c := content(node)

Jika nod adalah *html.node gunakan:

c := (*content)(node)

Komen daripada spesifikasi yang dipautkan di atas: "Jika sesuatu jenis bermula dengan operator *... ia mesti disertakan dalam kurungan jika perlu untuk mengelakkan kekaburan

Jika anda mahu content 而不是 *content maka anda perlu membatalkan rujukan penunjuk sebelum atau selepas penukaran, contohnya:

c := Content(*node) // dereference before conversion
// or
c := *(*Content)(node) // dereference after conversion

https://www.php.cn/link/fb9d433088a21464e7d634c4e190b31a

Atas ialah kandungan terperinci Bagaimana untuk menukar jenis kepada jenis baharu berdasarkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam