码迷,mamicode.com
首页 > 编程语言 > 详细

安全的Go语言从源数组构建目标Slice

时间:2014-11-11 19:23:35      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:http   ar   os   sp   2014   art   bs   ad   as   

今天在QQ群里聊到GO语言需要改进的地方,快乐的吐槽了一番。我之前最希望用数组构建slice的语法变更一下,因为现在流行的[start:end]方式并不严谨。后来不记得是哪个版本的时候,引入了三段式的[start:end:max]语法来创建slice。这样是安全了,但是确丑了很多。

如下例所示,二段式的定义在append操作后会污染到源数组:

    a := [5]int{1, 2, 3, 4, 5}
    s1 := a[1:3:3]
    s2 := a[1:3]
    _ = append(s1, 6)
    fmt.Println(a)  //out:[1 2 3 4 5]
    _ = append(s2, 7)
    fmt.Println(a)  //out:[1 2 3 7 5]


关于对new函数的改进,chai大帮我发到了邮件组,感谢chai大。

bubuko.com,布布扣

安全的Go语言从源数组构建目标Slice

标签:http   ar   os   sp   2014   art   bs   ad   as   

原文地址:http://my.oschina.net/promi/blog/343155

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!