
Go编程
tbc123tbc
好好学习IT技术。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
解决vscode无法跳转函数定义
主要是默认是Godoc,只要把它切换到guru就可以了。设置Docs Tool为guru.原创 2020-12-29 16:50:05 · 8368 阅读 · 1 评论 -
共享内存与共享消息对比--go编程
“不要通过共享内存来通信,而应该通过通信来共享内存。”这句话来自Go语言社区,这是为什么,今天我们来对比一下。var counter int = 0func Count(lock *sync.Mutex) { lock.Lock() counter++ fmt.Println(counter) lock.Unlock()}func CountT() { lock := &sync.Mutex{} for i := 0; i < 10; i++ { go Count(lo原创 2020-10-17 17:52:48 · 352 阅读 · 0 评论 -
Go基础编程——函数function
函 数 function 1、 Go 函 数 不 支 持 嵌套 、 重 载 和 默 认 参 数 2、但 支 持 以 下 特 性 无 需 声 明 原 型 、 不 定 长 度 变 参 、 多 返 回 值 、 命 名 返 回 值 参 数 匿 名 函 数 、 闭 包 3、定 义 函 数 使 用 关 键 字 func, 并且 左 大 括 号 不 能 另 起 一 行 4、函 数 也 可 以 作 为原创 2018-01-17 22:26:36 · 328 阅读 · 0 评论 -
Go编程基础——结构struct
结 构 struct 1、Go 中 的 struct 与 C 中 的 struct非常 相 似,并且 GO 没 有 class 2、使 用 type struct{} 定 义 结 构 , 名 称 遵 循 可 见 性 规 则 3、 支 持 指 向 自 身 的 指 针 类 型 成 员 4、支 持匿名 结 构, 可 用 作 成 员 或 定 义 成 员 变 量 5、匿 名 结 构 也 可 以 用原创 2018-01-18 16:38:57 · 434 阅读 · 0 评论 -
Go编程基础——方法method
方法method 1、Go 中 虽 没 有 class , 但 依 旧 有 method 2、通 过 显 示 说 明 receiver 来 实 现 与 某 个 类 型 的 组 合 3、只 能 为 同 一 个 包 中 的 类 型 定 义 方 法 4、Receiver 可 以 是 类 型 的 值 或 者 指 针 5、不 存 在 方 法 重 载 6、 可 以 使 值 或 指 针 来 调 用原创 2018-01-18 22:09:37 · 547 阅读 · 0 评论 -
Ubantu上手动安装Go环境
首先、下载go文件包 https://studygolang.com/dl 其次,右键提取到这里,开启一个终端,进入解压开的文件夹,使用一下命令 先sudo mkdir /usr/local/go 新建一个文件夹 再次、使用cp -r ./* /usr/local/go/把当前的文件夹下边的所有文件复制到指定的文件夹目录下 最后、 sudo gedit /etc/profileexpo...原创 2018-02-26 09:13:07 · 568 阅读 · 0 评论 -
go命令行工具
1. go run 用于运行.go文件 2.go build 用于编译包和依赖项。 如果是main包,默认编译执行命令时所在目录的所有包,生成可执行文件。也可指定要编译的文件,在命令后加上文件即可。 3. go install 用于编译并且安装包和依赖。分两步,编译生成结果文件,将结果文件移到GOPATH/pkg或者GOPATH/bin目录下 4. go get 用于下载并安装...原创 2018-04-07 23:33:59 · 1056 阅读 · 0 评论 -
新手系列——exec: "gcc": executable file not found in %PATH%
今天在使用go的cgo的时候 报错: exec: “gcc”: executable file not found in %PATH%解决方案:安装好 MinGW,把安装目录bin目录下的gcc运行文件移动到%PATH%原创 2018-04-06 15:38:39 · 3653 阅读 · 0 评论 -
Go基础编程——map
map 1、类 似 其 它 浯 言 中 的 唁 希 表 或 者 字 典 , 以 key-value形式存储数据 : 2、Key必须 是 支 持==或 ! = 比 较 运 算 的 类 型 , 不 可 以 是函数、 map或者slice 3、Map查找 比 线 性 搜 索 快 很 多 , 但 比 使 用 索 引(数组,Slice等) 访 问 数 据 的 类 型 慢 100 倍 4、Map使用m原创 2018-01-17 15:51:13 · 207 阅读 · 0 评论 -
Go语言中元素交换的三种方式
在实现排序算法时候经常用到元素交换,以下用冒泡排序算法来解释在Go语言中交换元素的三种方式。//冒泡排序b:=[...]int{3,1,6,99,9}fmt.Println(b)num:=len(b)for i:=0;i<num ;i++ { for j:=i+1;j<num ;j++ { if b[i]<b[j]{ temp:=b[i]原创 2018-01-16 23:39:59 · 7921 阅读 · 1 评论 -
Go语言匿名函数困惑
这里主要是描述我在学习过程中遇到的困惑。起初把函数单独写出来,想用普通函数那种写好后再去main方法中调用,老是报错。如下图: 真正的使用方法,要深刻体会匿名函数的缘由,它只是为了少数的几次调用,又不想命名太多造成命名冲突,就使用一边构造函数一边使用的情况,不能单独脱离调用来构造。 1-声明一个匿名函数func(参数列表) 返回值列表 { 函数体...}2-匿名函数的调用packag原创 2018-01-02 08:18:26 · 364 阅读 · 0 评论 -
解决Resource doesn't have a corresponding Go package.问题
首先上图 这个报错主要是程序要启动没有入口的原因,package main下边的mian方法才是一个程序的入口。这就要 修改目录结构如下图修改并运行就可以了原创 2018-01-12 18:19:00 · 3989 阅读 · 1 评论 -
Go入门——第一次GO编程
开始一段新的旅程GO 安装包下载地址为:https://golang.org/dl/Windows 下可以使用 .msi 后缀(在下载列表中可以找到该文件,如go1.9.2.windows-amd64.msi)的安装包来安装。 默认情况下.msi文件会安装在 c:\Go 目录下。 PATH 环境变量也会自动给你安装好(这个确实很先进啊,哈哈)。添加后你需要重启命令窗口才能生效。 先来一个简单的原创 2017-12-30 12:57:20 · 1021 阅读 · 0 评论 -
第一次使用liteIDE开发Go程序
开发Go程序的IDE有很多选择, (1)、elipse安装GoClipse插件, (2)、Vim/Emacs,万能开发工具 (3)、文本编辑工具gedit(linux)/Notepad++(Windows)/Fraise(Mac OS X) (4)、liteIDE,一款专业为GO语言开发的集成开发环境 (5)、jetbrains新出的Go IDE,GoglandIDE 使用LiteIDE原创 2017-12-30 15:42:02 · 11818 阅读 · 0 评论 -
Go编程基础——控制语句
指 针 Go虽 然 保 留 了 指 针 , 但 与 其 它 编 程 语 言 不 同 的 是 , 在 Go 当 中 不支 持 指 针 运 算 以 及 ” - > “ 运 算 符 而 直 接 采 用 “. “选择符 来 操 作 针目 标 对 象 的 成 员 -操 作 符 ” & “ 取 变 量地址 , 使 用 “*”通过 指针 间 接 访问 目 标 对 象 默 认 值 为nil而 非 NULL原创 2018-01-15 13:45:20 · 168 阅读 · 0 评论 -
Go编程基础——数组array
数组Array 1、定 义 数 组 的 格 式 : var [n] ,n>=0 2、数 组 长 度 也 是 类 型 的一部分, 因此 具 有 不 同 长 度 的数组为 为 不 同 类 型 3、注 意 区 分 指 向 数 组 的 指针和 指 针 数 组 4、数 组 在Go 中 为 值 类 型 5、数 组 之 间 可 以 使 用 = = 或 ! = 进 行 比 较 , 但 不 可 以 使 用原创 2018-01-15 20:41:46 · 904 阅读 · 0 评论 -
Go编程基础——接口interface
接口interface 1、接 囗 是 一 个 或 多 个 方法 签 名 的 集 合 2、 只 要 某 个 类 型 拥 有 该 接 囗 的 所 有 方 法 签 名 , 即 算 实 现 该接口, 无 需 显式 声 明 实 现 了 哪 个 接 囗 , 这 称 为 Structural Typing 3、接 囗 只 有 方法 声 明 , 没 有 实 现 , 没 有数据字段 4、接 囗 可 以原创 2018-01-20 15:45:02 · 431 阅读 · 0 评论 -
Go基础编程——切片slice
切片SIice 1、其 本 身 并 不 是 数 组 , 它 指 向底层数组 2、作 为 变 长 数 组 的 替代 方 案 , 可 以 关 联底层 数 组 的 局 部 或 全 部 3、为 引 用 类 型 4、可 以 直 接 创 建 或从底层 数 组 获 取 生 成 5、使 用 len() 获 取 元 个 数,cap() 获 取 容 量 6、一 般 使 用 make() 创 建 7、如原创 2018-01-16 23:27:20 · 340 阅读 · 0 评论 -
Go之语法糖(syntactic sugar)
在函数的不定参数的使用情况,主要是在使用——语法糖(syntactic sugar)。func myFunc1(args ...int){ for _,arg:=range args{ fmt.Println(arg) }}func myFunc2(args []int){ for _,arg:=range args{ fmt.Print原创 2018-01-01 21:42:58 · 2388 阅读 · 0 评论