c++程序员学习go
作为一个c++程序员学习go编程的笔记。首先声明本人文笔太差,当你阅读一点觉得实在无法阅读下去时请移步。
下载安装go,安装完毕后会增加系统环境变量path内容指定go程序所在目录,可以打开cmd输入go测试下是否安装成功,如果能运行go正常,不能运行的话重启电脑,还不行的话手动增加path环境变量。
在电脑上建立一个文件夹作为go的工作目录(也称工作空间),例如d:\gopah(可以起别的名字),下面放上三个文件夹,上图吧

弄完后设置环境变量GOPATH,指向d:\gopah
一、利用go语言创建第一个应用go程序
编辑一个文件first.go放到src\myfirstapp目录下面,内容
package main //包名称,类似namespage,要做应用程序的话用main
import "fmt" //导入包
func main(){ //定义一个主函数,找个大括号必须放在这一行,好变态
fmt.Printf("hello, world\n")
}
打开cmd,输入go install myfirstapp,这个地方不需要在cmd里面进入到src目录,go会根据gopath自动查找src下面的包名(对应的就是文件夹名)
执行无误后会在d:\gopath\bin下生产一个myfirstapp可执行程序,至此第一个go程序制作完毕。
假如你的代码放在d:\gopath\src\my\first下面则生成程序用 go install my/first
如果你已经进入了d:\gopath\src\my\first,则可以直接go install
二、利用go语言创建第一个go库(类似动态链接库、静态链接库,可以供其他go代码使用的库)
和上步一样,创建目录,编辑代码,假设放到了d:\gopath\src\my.com\ocr\hello.go
代码如下
package mypackage 包名通常约定和存放路径最后一层目录同名,如文件放在了d:\gopath\src\my.com\ocr下面,则通常包名用ocr
import "fmt"
func Print(){
fmt.Printf("hello, 世界\n")
}
生成库命令go install my.com/ocr,没有问题的话会在d:\gopath\pkg\下面生成一个ocr.a库
三、使用第一个库
和第一步一样,编辑代码如下:
package main
import "my.com/ocr"
func main(){
mypackage.Print() //这个地方应该是mypackage,不是ocr,和上步的package后面一致
}
剩下的就是学习go语言语法等内容了,
c++程序员学习go的更多相关文章
- Java程序员学习之路
1. Java语言基础 谈到Java语 言基础学习的书籍,大家肯定会推荐Bruce Eckel的<Thinking in Java>.它是一本写的相当深刻的技术书籍,Java语言基础部分基 ...
- php大力力 [033节] 随便看看:PHP程序员学习C++
php大力力 [033节] 随便看看:PHP程序员学习C++ 2014 兄弟连高洛峰 PHP教程14.1.7 在PHP脚本中操作MySQL数据库4 观看 - 56.com http://www.med ...
- .Net程序员学习Linux(一)
本次知识点:Linux系统的多终端切换,linux下的用户,linux远程访问工具使用,linux下重要的目录,命令的组成,通配符,linux的路径问题,文件操作的综合运用 为什么学习linux? 1 ...
- Net程序员学习Linux
Net程序员学习Linux 本次知识点:Linux系统的多终端切换,linux下的用户,linux远程访问工具使用,linux下重要的目录,命令的组成,通配符,linux的路径问题,文件操作的综合运用 ...
- PHP程序员学习路线
注:本文是@黑夜路人的旧文,假设PHP程序员基础不是非常扎实,简单梳理了每个阶段PHP程序员的技术要求,来帮助很多PHP程序做对照设定学习成长目标.再次分享,共勉,欢迎补充. 第一阶段:基础阶段(基础 ...
- 聊聊阿里社招面试,谈谈“野生”Java程序员学习的道路
引言 很尴尬的是,这个类型的文章其实之前笔者就写过,原文章里,笔者自称LZ(也就是楼主,有人说是老子的简写,笔者只想说,这位同学你站出来,保证不打死你,-_-),原文章名称叫做<回答阿里社招面试 ...
- 【Python】Java程序员学习Python(五)— 函数的定义和使用
不想做一个待宰的羔羊!!!!要自己变得强大.... 函数的定义和使用放在最前边还是有原因的,现在语言趋于通用,基本类型基本都是那些,重点还是学习对象的使用方法,而最根本的还是方法的使用,因此优先介绍, ...
- 最全的WEB前端开发程序员学习清单
史上最全的WEB前端开发程序员学习清单! 今天为什么要给大家分享这篇文章呢,我发现最近来学前端的特别多,群里面整天都有人问:前端好找工作吗?前端要怎么学啊?前端工资怎么样?前端XX,前端XXX,虽然我 ...
- 前端程序员学习 Golang gin 框架实战笔记之一开始玩 gin
原文链接 我是一名五六年经验的前端程序员,现在准备学习一下 Golang 的后端框架 gin. 以下是我的学习实战经验,记录下来,供大家参考. https://github.com/gin-gonic ...
随机推荐
- 使用Spring自定义注解实现任务路由的方法
在Spring mvc的开发中,我们可以通过RequestMapping来配,当前方法用于处理哪一个URL的请求.同样我们现在有一个需求,有一个任务调度器,可以按照不同的任务类型路由到不同的任务执行器 ...
- Java代理(三)
前面说到了java的动态代理,但是动态代理依赖于接口,这次来看看cglib来实现的代理... 假设有如下方法,这回没有说接口哦~ package proxy.cglibProxy; public cl ...
- Angular2学习笔记一
TypeScript: TypeScript变量声明:let和const是JavaScript里相对较新的变量声明方式,const是对let的一个增强,它能阻止对一个变量再次赋值. var作用域或函数 ...
- 高并发第十单:J.U.C AQS(AbstractQueuedSynchronizer) 组件:CountDownLatch. CyclicBarrier .Semaphore
这里有一篇介绍AQS的文章 非常好: Java并发之AQS详解 AQS全名:AbstractQueuedSynchronizer,是并发容器J.U.C(java.lang.concurrent)下lo ...
- Gson 使用new TypeToken<List<String>>(){}.getType() 为什么有 {}?
前言:使用 gson 时,不明白为什么有这种写法:new TypeToken<List<String>>(){}.getType(),所以来解惑.最终发现其实就是自己的 jav ...
- doTween———demo
1.2d翻转牌动画 public void RotateCard(Image[] obj) { ,jiaodu2=; ].rectTransform.rotation.y == ) { jiaodu1 ...
- Fastify 系列教程二 (中间件、钩子函数和装饰器)
Fastify 系列教程: Fastify 系列教程一 (路由和日志) Fastify 系列教程二 (中间件.钩子函数和装饰器) Fastify 系列教程三 (验证.序列化和生命周期) Fastify ...
- php写入文件fwrite() 函数用法
在php中,php fwrite() 函数是用于写入文件(可安全用于二进制文件).说的简单点,就是在一个文件中,添加新的内容,本篇文章收集总结了几篇关于php写入文件fwrite() 函数用法的总结, ...
- react组件(react-grid-gallery)
react有很多好玩的组件,react-grid-gallery就是其中一个,主要处理图片展示,对图片进行放大与缩小 文档:https://www.npmjs.com/package/react-gr ...
- arcengine 正确绑定办法
if (!RuntimeManager.Bind(ProductCode.Engine)) { if (!RuntimeManager.Bind(ProductCode.Desktop)) { Mes ...