文档章节

golang第二天

 孟星魂123456
发布于 2016/04/13 22:10
字数 385
阅读 15
收藏 0
点赞 1
评论 0
  • package

    • 语法:package <something>
    • 执行文件必须是:package main
    • 规范:
  1. package与目录一直,类似Java的方式
  2. 每个子目录中只能存在一个package
  3. go的package是以绝对路径GOPATH来寻址的,不要用相对路径来import 例1(每个子目录只能有一个Package):
/*
	package_name 属于目录 $GOSRC/hello.world/package_name.go
*/
package helloworld

import (
	"fmt"
)

func PrintHelloWorld() {
	fmt.Println("Hello World!")
}
/*
	helloworld 属于目录 $GOSRC/hello.world/helloworld.go
*/
package main

import (
	"helloworld"
)

func main() {
	helloworld.PrintHelloWorld()
}

输出:

/*
E:/golang/bin/go.exe build -i [E:/code/golang/src/helloworld]
can't load package: package hello.world: found packages main (helloworld.go) and hello (package_name.go) in E:\code\golang\src\hello.world
错误: 进程退出代码 1.
*/
  • import

    • 引用本地自定义包,是直接将$GOSRC作为根目录进行import 例1(正确的package命名):
/*
	main.go 属于目录 $GOSRC/main/main.go
*/
package main

import (
	"helloworld"
)

func main() {
	helloworld.PrintHelloWorld()
}
/*
	package_name 属于目录 $GOSRC/helloworld/package_name.go
*/
package helloworld

import (
	"fmt"
)

func PrintHelloWorld() {
	fmt.Println("Hello World!")
}

输出:

E:/code/golang/src/main/main.exe  [E:/code/golang/src/main]
Hello World!
成功: 进程退出代码 0.
    • 引用github上的包 在shell环境下执行命令行:go get github.com/Unknwon/goconfig 可以看见$GOSRC/github.com/Unknwon/goconfig目录
/*
	main.go 属于目录 $GOSRC/main/main.go
*/
package main

import (
	"fmt"
	"helloworld"
	"log"

	"github.com/Unknwon/goconfig"
)

func main() {
	// print
	helloworld.PrintHelloWorld()
	//config
	cfg, err := goconfig.LoadConfigFile("../resource/config.ini")
	if err != nil {
		log.Println("读取配置文件失败[../resource/config.ini]")
		return
	}
	str, _ := cfg.GetValue(goconfig.DEFAULT_SECTION, "k1")
	fmt.Printf("%s\n", str)
}

其中config.ini文件如下

#config.ini放在$GOSRC/resource目录
k1=v1
k2=v2
k3=v3
k4=v4

输出:

E:/code/golang/src/main/main.exe  [E:/code/golang/src/main]
Hello World!
v1

附:goconfig使用方法

© 著作权归作者所有

共有 人打赏支持
粉丝 0
博文 4
码字总数 2143
作品 0
GO学习第二天——web服务器搭建

前天刚刚用GO写了个Hello,今天弄了一下GO的web服务器。 其实GO的web服务器搭建非常容易。这里就不说GO的基本语句了,推荐一个网址学习https://github.com/astaxie/build-web-application-wi...

leaf志良
2013/10/30
0
0
Golang学习笔记目录

Golang 介绍 Go语言是谷歌2009发布的第二款开源编程语言。 Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。...

ChainZhang
2017/12/26
0
0
glide mirror不生效

@梦朝思夕 你好,想跟你请教个问题: 我现在在使用一份开源代码。这份代码也是用glide管理的。它依赖golang.org/x/crypto。我按照你的帖子做了mirror。 [INFO] --> golang.org/x/crypto rep...

puddingS
2017/09/13
147
12
golang: 官博译文:可测试的 Golang 代码示例

javascript: GoJS 绘图 (五) :定位面板与垂直面板(Panel) golang: 官博译文:可测试的 Golang 代码示例 idea: idea配置Mongodb Golang vs Java Rockmongo 查询条件总结 golang: golang的一...

d_watson
2016/06/01
27
0
Golang资料集

该资源的github地址:Qix 《Platform-native GUI library for Go》 介绍:跨平台的golang GUI库,支持Windows(xp以上),Unix,Mac OS X(Mac OS X 10.7以上) 《Gopm 快速入门》 介绍:Gopm(Go 包管...

ty4z2008
2016/03/11
0
0
Golang的docker尝试

一、 前言 就不在这里介绍了,相关的文档已经很完善,中文文档 Docker —— 从入门到实践 写的很棒,推荐去看看。 基于 开发,已经不用解释了,而 天生适合运行在 容器中,却不是这个原因,这...

dingdayu
2017/10/20
0
3
golang交叉编译

记录点分享http://gitos.org/2016/04/24/golang-cross-compiler/ 一 环境安装 在苹果系统上安装golang环境非常简单, 用brew直接 brew install go 就可以安装好golang的开发环境. 如果没有安装...

purely
2016/04/18
137
0
golang: beego自动化部署

springboot: springboot+mongodb+docker实例 golang: beego自动化部署 数据库管理平台NetopGO简介 Go语言开发 Go语言圣经(中文版) Go语言(golang)开源项目大全 Go语言诞生5周年!10大Go语言...

d_watson
2016/05/20
233
0
Install golang-go to Ubuntu

The Go project's official download page is at https://golang.org/dl/. There are some other options for Debian based systems like Ubuntu. These packages were not created by the G......

qwfys
06/17
0
0
Golang 协程工作池 - 豆豆Pool

豆豆Pool — GOLANG简单的工作池 本repo是一个简单的golang工作池,仅供交流和学习使用。golang工作池的作用是可以限制goroutine的启动数量。 use //NewTask是放到工作池当中运行的函数。使用...

ppmoon
07/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Confluence 6 安装补丁类文件

Atlassian 支持或者 Atlassian 缺陷修复小组可能针对有一些关键问题会提供补丁来解决这些问题,但是这些问题还没有放到下一个更新版本中。这些问题将会使用 Class 类文件同时在官方 Jira bug...

honeymose
10分钟前
0
0
设计模式:代理模式

代理模式可以分为三种:静态代理,动态代理,cglib代理 1.静态代理:被代理的类需要实现一接口或是继承一父类 委托类(被代理的类): package com.java.pattern.proxy.staticdemo;publ...

人觉非常君
12分钟前
0
0
非常实用的IDEA插件之总结

1、Alibaba Java Coding Guidelines 经过247天的持续研发,阿里巴巴于10月14日在杭州云栖大会上,正式发布众所期待的《阿里巴巴Java开发规约》扫描插件!该插件由阿里巴巴P3C项目组研发。P3C...

Gibbons
18分钟前
0
0
Tomcat介绍,安装jdk,安装tomcat,配置Tomcat监听80端口

Tomcat介绍 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。 java程序写的网站用tomcat+jdk来运行...

TaoXu
19分钟前
0
0
TensorFlow,从一个 Android Demo 开始

TensorFlow Android Demo 项目地址 Machine Learning 既然提到了 TensorFlow,那是不是得神经网络、机器学习了解下? 如果你能坚持把 机器学习速成课程 给啃完了,觉得还挺有兴趣的,那可以考...

孟飞阳
20分钟前
0
0
JVM学习笔记二:内存结构规范

1、JVM基本结构图 2、java堆(Heap) 3、方法区(Method Area) 4、程序计数器 5、JAVA栈图解 局部变量表:八大基本类型,还可以存储引用类型 上一篇:JVM学习笔记一:类加载机制介绍...

刘祖鹏
26分钟前
0
0
mui集成微信H5支付(返回白屏问题已经解决)

一.项目需求 因为公司人员缺少,没有专门开发安卓和ios的人员,为了项目尽早上线采用了混合APP开发的方式,我选择了MUI混合开发框架,项目中需要在用户购买VIP会员的时候进行支付,所以需要在项目...

银装素裹
30分钟前
0
0
TensorFlow gpu 版 安装

win10 + Python3.6 下载cuda https://developer.nvidia.com/cuda-downloads?target_os=Windows&target_arch=x86_64&target_version=81&target_type=exelocal 下载cudnn,复制链接地址,使用迅......

阿豪boy
49分钟前
0
0
SpringBoot集成Redis--配置自定义的RedisCacheManager

配置自定义的RedisCacheManager--1自定义键生成规则 默认的键生成器 当不指定缓存的key时,SpringBoot会使用SimpleKeyGenerator生成key。 SimpleKeyGenerator SimpleKey 查看源码可以发现,它...

karma123
49分钟前
0
0
防火墙未来的发展趋势在哪里?

导读 防火墙(Firewall),也称防护墙,是由Check Point创立者Gil Shwed于1993年发明并引入国际互联网。当下互联网时代,无论是大小企业,大部分都会部署有防火墙的设备,但这些防火墙往往并不...

问题终结者
51分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部