Go 入门基础

前言

seaconch 最近在学习 Go 语言编程,基础部分还没有看完,不过只看不练,或者只过一遍还是感觉不够牢固,所以决定通过文章来记录、并且梳理一下已了解过的知识。

一.Go基础结构

1.基础

Go 编写的代码文件都以 .go 结尾。

这里假设我们有一个名为: main.go 的文件。

那想要将 main.go 生成一个可执行的应用程序,至少要是如下内容 :

package main

func main() {
}

编译生成

go build main.go

是可以通过的,成功的生成了 main.exe

只是这样做并没有任何意义,所以说真正意义上我们要编写一个 Go 程序 至少是下面这样的 :

package main

import "fmt"

func main() {
    fmt.Println("hello go")
}
go build main.go

之后运行 main.exe

输出结果:

hello go

2.解释

简单点来说:

package main :表示这个包叫 main

import "fmt" :导入一个 fmt

func main () { ... } : 一个叫 main 的函数

注意:

  • package 必须是有效代码的第一行
  • main包 只能有一个
  • import 导入的包,必须是被使用的
  • main 函数main 包 只能有一个,并且肯定要有一个

二.试一试

1.main包 所在文件必须叫 main.go 吗 ? 答案:不是

2.main包 可以写多个 .go 文件吗 ? 答案:可以

3.同目录 可以有多个包名吗 ? 答案:可以,但不可以同时编译

4.自定义包 应该如何规划目录? 答案:最好是将同一个包的不同文件(.go)放在同一个目录,目录名建议以包名命名

5.自定义包 如何导入 main.go 中使用? 答案:自定义包需要添加相对路径,如:”./pkg_1″,之后通过pkg_1.方法 / 属性

6.自定义包 可以有 Main 函数吗 ? 答案:可以,完全不受影响

7.自定义包 如何区分公共成员与私有成员 ? 答案:大写字母开头公共,其他私有

8.main包 分成多个.go文件 如何编译 ? 答案:windows 上 go build,linux 上 go build *.go

以上都是 seaconch 在学习中遇到的问题总结,希望能帮到大家。

    原文作者:bei6
    原文地址: https://segmentfault.com/a/1190000015562355
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞