最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

GO的基礎(chǔ)知識掃盲注意事項

 更新時間:2022年12月19日 14:43:17   作者:astarblog  
這篇文章主要介紹了GO的基礎(chǔ)知識注意事項,本文是GO語言小白的掃盲文,主要講解了go語言的基本知識,GO程序目錄結(jié)構(gòu),GO程序包的導(dǎo)入與別名運用,GO內(nèi)置關(guān)鍵字,GO注釋方法需要的朋友可以參考下

一.GO程序目錄結(jié)構(gòu)

在GOPATH目錄下的結(jié)構(gòu)

--bin(存放編譯后生成的可執(zhí)行文)
|----hello.exe(可執(zhí)行文件)
--pkg(存放編譯后生成的包文)
|-----(后面用到了在說)
--src(存放項目源)
|----hello(項目目錄)
|------main.go(入口文件,下面會詳解)
|----...(多個目錄和上面hello的形式一樣)
|-------...

二.GO程序的一般結(jié)構(gòu)

在進行介紹前我先來回顧下之前的main.go文件結(jié)構(gòu)

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

Go程序是通過package來組織的,和python類似,只有package名稱為main的包可以包含main函數(shù),一個可執(zhí)行的程序有且僅有一個main包

通過import關(guān)鍵字來導(dǎo)入其他非main包

通過const關(guān)鍵字來定義常量

通過var關(guān)鍵字來進行全局變量的聲明與賦值

通過type鍵字來進行結(jié)構(gòu)(struct)或接口(interface)的聲明

通過func關(guān)鍵字來進行函數(shù)的聲明

三.GO程序包的導(dǎo)入與別名運用

包的導(dǎo)入

單獨引入各種包

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

統(tǒng)一引入,省去多個import關(guān)鍵字

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

如果導(dǎo)入的包如果沒有調(diào)用,在編譯的時候會報編譯錯誤,這個是很關(guān)鍵的,所以在編譯報錯的時候可以檢查一下是否有導(dǎo)入的包未調(diào)用

包的別名與運用

在實際工作中為了簡寫或者統(tǒng)一命名等一些特殊情況下

import(
    print "fmt"
)

上面就是將fmt替換成print,沒替換前是:

fmt.Println("Hello World")

替換后是:

print.Println("Hello World")

包的別名還有一個省略調(diào)用的,非常不建意那么用,所以就不介紹了

四.可見性規(guī)格(非常重要)

在GO語言中使用大小寫確定該 常量、變量、類型、接口、結(jié)構(gòu)或函數(shù) 是否可以被外部包所調(diào)用

函數(shù)名首字母小寫為private,表示私有,不可以被外部調(diào)用

函數(shù)名首字母大寫為public,表示公有,可以被外部調(diào)用

1. 首字母小寫函數(shù)例:(不可被名部調(diào)用)

func getDate(){
    return ...
}

2. 首字母大寫函數(shù)例:(可被外部調(diào)用)

func GetDate(){
    return ...
}

五. GO內(nèi)置關(guān)鍵字

常用一共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語言的基礎(chǔ)知識掃盲文,主要講解了GO程序目錄結(jié)構(gòu),GO程序包的導(dǎo)入與別名運用,GO內(nèi)置關(guān)鍵字,GO注釋方法等相關(guān)知識,更多GO語言基礎(chǔ)知識請查看下面的相關(guān)鏈接

相關(guān)文章

  • Go1.21新增slices包的用法詳解

    Go1.21新增slices包的用法詳解

    Go?1.21新增的?slices?包提供了很多和切片相關(guān)的函數(shù),可以用于任何類型的切片,這篇文章主要來和大家介紹一下slices包中相關(guān)函數(shù)的用法,需要的可以參考一下
    2023-08-08
  • Go語言并發(fā)爬蟲的具體實現(xiàn)

    Go語言并發(fā)爬蟲的具體實現(xiàn)

    本文主要介紹了Go語言并發(fā)爬蟲的具體實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • Go語言的互斥鎖的詳細使用

    Go語言的互斥鎖的詳細使用

    本文主要介紹了Go語言的互斥鎖的詳細使用,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • goland?-sync/atomic原子操作小結(jié)

    goland?-sync/atomic原子操作小結(jié)

    這篇文章主要介紹了goland?-sync/atomic原子操作,原子操作能夠保證執(zhí)行期間是連續(xù)且不會被中斷(變量不會被其他修改,mutex可能存在被其他修改的情況),本文給大家介紹的非常詳細,需要的朋友參考下
    2022-08-08
  • Go網(wǎng)絡(luò)編程TCP抓包實操示例探究

    Go網(wǎng)絡(luò)編程TCP抓包實操示例探究

    作為一名軟件開發(fā)者,網(wǎng)絡(luò)編程是必備知識,本文通過?Go?語言實現(xiàn)?TCP?套接字編程,并結(jié)合?tcpdump?工具,展示它的三次握手、數(shù)據(jù)傳輸以及四次揮手的過程,幫助讀者更好地理解?TCP?協(xié)議與?Go?網(wǎng)絡(luò)編程
    2024-01-01
  • 深入了解Go語言中的作用域和變量重聲明

    深入了解Go語言中的作用域和變量重聲明

    在?Go?語言中,代碼塊的嵌套和作用域是程序設(shè)計的關(guān)鍵概念之一,本文將探討如何在?Go?語言中利用代碼塊的嵌套和作用域來組織代碼,并介紹變量重聲明的規(guī)則,感興趣的可以了解下
    2023-11-11
  • 如何用Go判斷元素是否在切片中

    如何用Go判斷元素是否在切片中

    切片(Slice)是一個擁有相同類型元素的可變長度的序列,下面這篇文章主要給大家介紹了關(guān)于如何用Go判斷元素是否在切片中的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-06-06
  • golang Gorm與數(shù)據(jù)庫完整性約束詳解

    golang Gorm與數(shù)據(jù)庫完整性約束詳解

    這篇文章主要介紹了golang Gorm與數(shù)據(jù)庫完整性約束詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • 使用Golang開發(fā)一個簡易版shell

    使用Golang開發(fā)一個簡易版shell

    這篇文章主要為大家詳細介紹了如何使用Golang開發(fā)一個簡易版shell,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-02-02
  • Go語言變量與基礎(chǔ)數(shù)據(jù)類型詳情

    Go語言變量與基礎(chǔ)數(shù)據(jù)類型詳情

    Go 是靜態(tài)(編譯型)語言,是區(qū)別于解釋型語言的弱類型語言(靜態(tài):類型固定,強類型:不同類型不允許直接運算),下面文章將對其進行詳細介紹,需要的朋友可以參考一下
    2021-09-09

最新評論

张家界市| 南投市| 泸定县| 财经| 五常市| 万山特区| 灵武市| 塘沽区| 吉林省| 尼木县| 北宁市| 左权县| 剑阁县| 双城市| 类乌齐县| 银川市| 潜山县| 德江县| 治多县| 延长县| 诸城市| 交口县| 平利县| 芒康县| 沅陵县| 灵山县| 页游| 浦北县| 建平县| 天门市| 盈江县| 土默特右旗| 平塘县| 肃北| 疏附县| 江西省| 晋中市| 修武县| 巫山县| 高安市| 民权县|