Files

22 lines
285 B
Go

package main
import (
"fmt"
"unsafe"
)
type eface struct {
typ unsafe.Pointer
val unsafe.Pointer
}
func main() {
var value int = 100
var i interface{} = value
fmt.Println("before:", i)
obj := (*eface)(unsafe.Pointer(&i))
*(*int)(obj.val) = 200
fmt.Println("after:", i)
}