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 ...
随机推荐
- Tornado异步IO
Tornado提供了强大的异步IO机制,提高了服务器的响应能力. @tornado.web.asynchronous tornado默认在处理函数返回时关闭链接,@tornado.web.asynch ...
- C#比较两个字符串的相似度【转】
原文地址:http://www.2cto.com/kf/201202/121170.html 我们在做数据系统的时候,经常会用到模糊搜索,但是,数据库提供的模糊搜索并不具备按照相关度进行排序的功能. ...
- javascript正则表达式获取控制
正则表达式的元字符是包含特殊含义的字符,他们有一些特殊的功能,可以控制匹配模式的方式,反斜杠后的元字符将失去其特殊含义 单个字符 元字符 匹配情况 . 匹配除换行符外的任意字符 [a-z0-9] 匹配 ...
- Xcode 8 媒体权限
- JVM读书笔记
1 概念 java virtual machine为java虚拟机,运行使用jdk中编译器编译的java程序. 2 JVM内存模型 程序计数器:线程私有.当前线程正在执行的行号指示器. Java虚拟机 ...
- [Clojure] 包管理器leiningen配置国内镜像仓库
clojure用到的包管理站主要有两个,一个是解决java类库依赖的maven,一个是clojar 很多人都知道maven有阿里云提供的镜像站,可是clojar呢?幸运的是中科大为我们提供了cloja ...
- spring cloud 服务发现
Eureka 当注册中心使用. 注: 1.当仅有一台Eureka时,不需要向别的节点注册. 2.集群的时候,需要相互注册. 工作方式: 前提: Eureka //注册中心 provide1 / ...
- 莫名其妙的标记之@noescape
Swift 中经常遇到一些不熟悉的关键字, 例如@autoclosure, @noescape...等等, 为什么要加这样的关键字, 我自己写方法的时候什么时候要加, 什么时候不加, 都是应该考虑的问 ...
- java:tag 自定义标签应用
一,tag类 1.1 TagMy标签类,格式化当前日期并输出 package com.dkt.tag; import java.io.IOException; import java.text.Sim ...
- js二分查找树实现
function BinaryTree() { var Node = function(key) { this.key = key; this.left = null; this.right = nu ...