初级会员
  • 第 33508 位会员
  • StoneFlying
  • 2019-03-30 23:09:01
  • Offline
  • 28 24

最近发布的主题

    暂无

最近发布的文章

    暂无

最近分享的资源

    暂无

最近发布的项目

    暂无

最近的评论

  • ```go package main import ( "fmt" ) func main() { AlterPrint() } // POINT: communicate between goroutines by channel func AlterPrint(){ letter, number := make(chan bool), make(chan bool) letterDone := make(chan bool) numberDone := make(chan bool) go func() { i := 1 for { if i > 28 { numberDone <- true return } select{ case <-number: { fmt.Print(i) i++ fmt.Print(i) i++ if i != 29 { letter <- true } break } default: { break } } } }() go func(){ i := 'A' for { if i > 'Z' { letterDone <- true return } select{ case <-letter: { fmt.Print(string(i)) i++ fmt.Print(string(i)) i++ number <- true break } default: { break } } } }() number <- true <- letterDone <- numberDone } ```
  • ```go package main import ( "fmt" ) type User struct { Id int Name string } func ChangeSlice(s interface{}) { user1 := User{ Id: 1, Name: "张三", } newSlice := make([]User, 0) newSlice = append(newSlice, user1) *(s.(*[]User)) = newSlice } func main() { users := make([]User, 0) ChangeSlice(&users) // 这里希望让Users指向ChangeSlice函数中的那个新数组 fmt.Println(users) // 希望输出[{1 张三}],但是现在输出[] } ```
  • stoneflying@yeah.net 谢谢大佬哟