GO的基础知识扫盲注意事项

作者:astarblog 时间:2023-07-12 21:30:26 

一.GO程序目录结构

在GOPATH目录下的结构
--bin(存放编译后生成的可执行文)
|----hello.exe(可执行文件)
--pkg(存放编译后生成的包文)
|-----(后面用到了在说)
--src(存放项目源)
|----hello(项目目录)
|------main.go(入口文件,下面会详解)
|----...(多个目录和上面hello的形式一样)
|-------...

二.GO程序的一般结构

在进行介绍前我先来回顾下之前的main.go文件结构

package main
import (
   "fmt"
)
func main() {
   fmt.Println("Hello World")
}

Go程序是通过package来组织的,和python类似,只有package名称为main的包可以包含main函数,一个可执行的程序有且仅有一个main包

通过import关键字来导入其他非main包

通过const关键字来定义常量

通过var关键字来进行全局变量的声明与赋值

通过type键字来进行结构(struct)或接口(interface)的声明

通过func关键字来进行函数的声明

三.GO程序包的导入与别名运用

包的导入

单独引入各种包

import "fmt"
import "io"
import "time"
import "strings"

统一引入,省去多个import关键字

import(
    "fmt"
    "io"
    "time"
    "strings"
)

如果导入的包如果没有调用,在编译的时候会报编译错误,这个是很关键的,所以在编译报错的时候可以检查一下是否有导入的包未调用

包的别名与运用

在实际工作中为了简写或者统一命名等一些特殊情况下

import(
   print "fmt"
)

上面就是将fmt替换成print,没替换前是:

fmt.Println("Hello World")

替换后是:

print.Println("Hello World")

包的别名还有一个省略调用的,非常不建意那么用,所以就不介绍了

四.可见性规格(非常重要)

在GO语言中使用大小写确定该 常量、变量、类型、接口、结构或函数 是否可以被外部包所调用

函数名首字母小写为private,表示私有,不可以被外部调用

函数名首字母大写为public,表示公有,可以被外部调用

1. 首字母小写函数例:(不可被名部调用)

func getDate(){
   return ...
}

2. 首字母大写函数例:(可被外部调用)

func GetDate(){
   return ...
}

五. GO内置关键字

常用一共25个,全部小写

break
default
func
interface
select
case
defer
go
map
struct
chan
else
goto
package
switch
const
fallthrough
if
range
type
continue
for
import
return
var

六. GO注释方法

//  : 表示单行注释
/* */   : 表示多行注释

本文主要是GO语言的基础知识扫盲文,主要讲解了GO程序目录结构,GO程序包的导入与别名运用,GO内置关键字,GO注释方法等相关知识

来源:https://www.jianshu.com/p/2769947522ae

标签:GO,基础
0
投稿

猜你喜欢

  • golang 中signal包的Notify用法说明

    2023-07-19 19:06:36
  • Python数据类型及常用方法

    2022-09-22 08:09:19
  • javascript手风琴下拉菜单实现代码

    2024-06-20 19:18:32
  • 合理利用页面标签元素有利用搜索引擎收录

    2008-11-03 11:49:00
  • linux下mysql乱码问题的解决方案

    2024-01-26 11:28:06
  • Golang嵌入资源文件实现步骤详解

    2023-06-21 08:52:36
  • Python实现RLE格式与PNG格式互转

    2021-07-11 18:23:19
  • Vue开发环境跨域访问问题

    2023-07-02 17:07:34
  • vue3的介绍和两种创建方式详解(cli和vite)

    2023-07-02 16:51:31
  • python批量修改交换机密码的示例

    2023-06-29 07:52:42
  • Python map及filter函数使用方法解析

    2021-11-20 05:25:03
  • Python上下文管理器深入讲解

    2022-02-23 08:50:02
  • MySQL安装失败的原因及解决步骤

    2024-01-17 18:22:27
  • sql server如何得到插入一条记录后最新的ID?

    2009-11-15 20:06:00
  • python+pygame实现坦克大战

    2023-12-04 10:52:38
  • Python中类和对象的绑定及非绑定方法详解

    2023-03-13 12:27:32
  • Python制作微信机器人教程详解

    2021-05-09 13:44:44
  • 如何在conda虚拟环境中配置cuda+cudnn+pytorch深度学习环境

    2022-06-16 14:43:04
  • 如何使用pyinstaller打包多个和单个python文件详解

    2023-03-30 10:48:26
  • Sqlserver 2000/2005/2008 的收缩日志方法和清理日志方法

    2012-07-21 14:55:18
  • asp之家 网络编程 m.aspxhome.com