应用编程基础课第三讲:Go编程基础

栏目: Go · 发布时间: 6年前

内容简介:上面两次课我讲解了编程方面的基础知识,这次开始,我使用Go语言来做一些编程实践方面的讲解。今天先来说下Go语言中的一些我认为比较重要的知识点。关于Go的基础使用,这里不做过多介绍,可以阅读:

上面两次课我讲解了编程方面的基础知识,这次开始,我使用 Go 语言来做一些编程实践方面的讲解。

今天先来说下Go语言中的一些我认为比较重要的知识点。

关于Go的基础使用,这里不做过多介绍,可以阅读:

  1. How to Write Go Code:https://golang.org/doc/code.html
  2. Effective Go:https://golang.org/doc/effective_go.html
  3. The Way to Go:https://github.com/Unknwon/the-way-to-go_ZH_CN

重要的数据结构

slice

slice是go中最常用的数据结构之一,它相当于动态数组,了解下它的内部实现,对我们是用来说有很大的好处:

slice的数据结构示例为:

type slice struct {
    ptr *array  //底层存储数组
    len int     //当前存储了多少个元素
    cap int     //底层数组可以存储多少个元素(从ptr指向的位置开始)
}

我们常用的slice有个len和cap的概念,他们就是取len和cap这两个字段的值。

slice我们通常都用它做为动态数组使用,但slice翻译过来是切片的意思,为什么呢?

我们来看个例子:

首先,我们创建一个slice:

s := make([]int, 5)

对应的数据结构为:

之后,我们再调用:

ss := s[2:4]

我们得到:

所以两个slice,相当于是在底层array上的两个切片。

参考


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Reversing

Reversing

艾拉姆(Eilam,E.) / 韩琪、杨艳、王玉英、李娜 / 电子工业出版社 / 2007-9 / 79.00元

本书描述的是在逆向与反逆向之间展开的一场旷日持久的拉锯战。作者Eldad Eilam以一个解说人的身份为我们详尽地评述了双方使用的每一招每一式的优点与不足。 书中包含的主要内容有:操作系统的逆向工程;.NET平台上的逆向工程;逆向未公开的文件格式和网络协议;逆向工程的合法性问题;拷贝保护和数字版权管理技术的逆向工程;防止别人对你的代码实施逆向工程的各种技术;恶意程序的逆向工程;反编译器的基本......一起来看看 《Reversing》 这本书的介绍吧!

html转js在线工具
html转js在线工具

html转js在线工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具