Saya belum menemukan sumber yang bagus untuk menggunakan interface{}tipe. Sebagai contoh
package main
import "fmt"
func weirdFunc(i int) interface{} {
if i == 0 {
return "zero"
}
return i
}
func main() {
var i = 5
var w = weirdFunc(5)
// this example works!
if tmp, ok := w.(int); ok {
i += tmp
}
fmt.Println("i =", i)
}
Apakah Anda mengetahui pengenalan yang baik untuk menggunakan Go interface{}?
pertanyaan spesifik:
- bagaimana cara mendapatkan Tipe w yang "asli"?
- apakah ada cara untuk mendapatkan representasi string dari suatu tipe?
- apakah ada cara untuk menggunakan representasi string dari suatu tipe untuk mengonversi nilai?