go_study/bilibili/aceid/struct/reflect/test.go
2024-11-18 12:25:02 +08:00

38 lines
790 B
Go

package main
import (
"fmt"
"io"
"os"
)
func main() {
var a string
// pair<statictype: string, value: "aceld">
a = "aceld"
// pair<type: string, value "aceld">
var allType interface{}
allType = a
str, _ := allType.(string)
fmt.Println(str)
// type: pair<type:*os.File, value: "/dev/tty"文件描述符>
tty, err := os.OpenFile("/dev/tty", os.O_RDWR, 0)
if err != nil {
fmt.Println("open file error", err)
return
}
// r: pair<type: , value: >
var r io.Reader
// r: pair<type:*os.File , value:"/dev/tty"文件描述符>
r = tty
// w: pair<type: , value: >
var w io.Writer
// w: pair<type:*os.File, value:"/dev/tty"文件描述符>
w = r.(io.Writer)
w.Write([]byte("HELLO THIS is A TEST!!!\n"))
r.(io.Writer).Write([]byte("HELLO THIS is A TEST, too!!!\n"))
}