作为一个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的更多相关文章

  1. Java程序员学习之路

    1. Java语言基础 谈到Java语 言基础学习的书籍,大家肯定会推荐Bruce Eckel的<Thinking in Java>.它是一本写的相当深刻的技术书籍,Java语言基础部分基 ...

  2. php大力力 [033节] 随便看看:PHP程序员学习C++

    php大力力 [033节] 随便看看:PHP程序员学习C++ 2014 兄弟连高洛峰 PHP教程14.1.7 在PHP脚本中操作MySQL数据库4 观看 - 56.com http://www.med ...

  3. .Net程序员学习Linux(一)

    本次知识点:Linux系统的多终端切换,linux下的用户,linux远程访问工具使用,linux下重要的目录,命令的组成,通配符,linux的路径问题,文件操作的综合运用 为什么学习linux? 1 ...

  4. Net程序员学习Linux

    Net程序员学习Linux 本次知识点:Linux系统的多终端切换,linux下的用户,linux远程访问工具使用,linux下重要的目录,命令的组成,通配符,linux的路径问题,文件操作的综合运用 ...

  5. PHP程序员学习路线

    注:本文是@黑夜路人的旧文,假设PHP程序员基础不是非常扎实,简单梳理了每个阶段PHP程序员的技术要求,来帮助很多PHP程序做对照设定学习成长目标.再次分享,共勉,欢迎补充. 第一阶段:基础阶段(基础 ...

  6. 聊聊阿里社招面试,谈谈“野生”Java程序员学习的道路

    引言 很尴尬的是,这个类型的文章其实之前笔者就写过,原文章里,笔者自称LZ(也就是楼主,有人说是老子的简写,笔者只想说,这位同学你站出来,保证不打死你,-_-),原文章名称叫做<回答阿里社招面试 ...

  7. 【Python】Java程序员学习Python(五)— 函数的定义和使用

    不想做一个待宰的羔羊!!!!要自己变得强大.... 函数的定义和使用放在最前边还是有原因的,现在语言趋于通用,基本类型基本都是那些,重点还是学习对象的使用方法,而最根本的还是方法的使用,因此优先介绍, ...

  8. 最全的WEB前端开发程序员学习清单

    史上最全的WEB前端开发程序员学习清单! 今天为什么要给大家分享这篇文章呢,我发现最近来学前端的特别多,群里面整天都有人问:前端好找工作吗?前端要怎么学啊?前端工资怎么样?前端XX,前端XXX,虽然我 ...

  9. 前端程序员学习 Golang gin 框架实战笔记之一开始玩 gin

    原文链接 我是一名五六年经验的前端程序员,现在准备学习一下 Golang 的后端框架 gin. 以下是我的学习实战经验,记录下来,供大家参考. https://github.com/gin-gonic ...

随机推荐

  1. 通过spark-sql快速读取hive中的数据

    1 配置并启动 1.1 创建并配置hive-site.xml 在运行Spark SQL CLI中需要使用到Hive Metastore,故需要在Spark中添加其uris.具体方法是将HIVE_CON ...

  2. Node.js链式回调

    由于异步的关系,代码的书写顺序可能和执行顺序并不一样,可能想先执行A再执行B,但由于异步可能B要先于A执行.例如在OC中使用AFnetworking请求数据然后刷新页面,由于网络请求是用block实现 ...

  3. Linux进程间通信 -- 管道(pipe)

    前言    进程是一个独立的资源管理单元,不同进程间的资源是独立的,不能在一个进程中访问另一个进程的用户空间和内存空间.但是,进程不是孤立的,不同进程之间需要信息的交互和状态的传递,因此需要进程间数据 ...

  4. 一张图看懂Sprint Planning Meeting

    本文主要参考<Scrum精髓>这本书的内容 每个Sprint都是从Sprint Planning Meeting开始,Scrum团队成员聚集在一起商定下个Sprint目标,并且确定在Spr ...

  5. mui 百度语音识别转换文字

    前言 用mui混合开发的APP,现有一个功能需求就是语音转换成文字,并把语音进行保存.对此考虑两种选择讯飞和百度.最终选择了百度语音. 百度语音 通过官方文档我们大致可以确定如果想要实现语音识别,要做 ...

  6. Spring boot --- Spring Oauth(一)

       文章部分图片来自参考资料,这篇文章主要讲 spring security  oauth 概述 上一篇我们学习了 SS 中重要的工作原理和几个大概的认证和授权过程.而 spring securit ...

  7. drawRect:和layoutSubview的区别

    关于这两个方法的区别 还是有点意思的. UIView的setNeedsDisplay和setNeedsLayout方法.首先两个方法都是异步执行的.setNeedsDisplay会调用自动调用draw ...

  8. Java基础教程(17)--接口

      就像类一样,接口也是引用类型.它可以包含常量,方法签名,默认方法,静态方法和嵌套类型.在接口中,只有默认方法和静态方法有方法体.但不同于类,接口无法实例化,它只能被类实现或被其他接口继承. 一.定 ...

  9. 十九、curator recipes之PathChildrenCache

    简介 curator可以监听路径下子节点的变更操作,如创建节点,删除节点 官方文档:http://curator.apache.org/curator-recipes/path-cache.html ...

  10. Java 如何重写对象的 equals 方法和 hashCode 方法

    前言:Java 对象如果要比较是否相等,则需要重写 equals 方法,同时重写 hashCode 方法,而且 hashCode 方法里面使用质数 31.接下来看看各种为什么. 一.需求: 对比两个对 ...