好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > go語言學習之包和變量詳解

go語言學習之包和變量詳解

熱門標簽:建造者2地圖標注 黃岡人工智能電銷機器人哪個好 浙江高頻外呼系統多少錢一個月 阿里云ai電話機器人 鄭州亮點科技用的什么外呼系統 濱州自動電銷機器人排名 汕頭小型外呼系統 惠州電銷防封電話卡 釘釘有地圖標注功能嗎

前言

本文主要介紹了關于go語言之包和變量的相關內容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧。

一、包的概念

包是go語言中不可缺少部分,在每個go源碼的第一行進行定義,定義方式是:package "包名",并且該名稱是作為調用該包時候所使用的名稱。

包的概念總結:

  • 每個 Go 文件都屬于且僅屬于一個包。一個包可以由許多以 .go 為擴展名的源文件組成,因此文件名和包名可能不同,為了規范,功能相似或者屬于相同性質的源碼歸集到相同的包名中。
  • 每個應用程序都必須有且只有一個包名稱為main,他是該程序的入口,執行時候會尋找包名為main的代碼
  • 包與包之間可以被相互調用,主要為了減少代碼重復性
  • 包一旦被引入就需要被使用,除非引入的時候忽略它(前面加_表示忽略它,只是用它來初始化),如果引入了包,而在代碼中沒用使用,運行時候會報錯

二、包的引入

1.包引入的方法

方法一:

import "fmt"
import "os"

方法二:

import "fmt"; import "os"

方法三(推薦?。?/p>

import (
 "fmt"
 "os"
)

2.引入其他包

go語言中,引入包的路徑是根據GOPATH/src 這個環境變量作為相對路徑進行引入的,如果GOPATH存在多個,那么go將逐一尋找路徑,直到找到,若GOPATH/src未找到則編譯出錯。

示例:

我的GOPATH為:C:\Users\17647\Desktop\go_work\src

首先建立包文件1:C:\Users\17647\Desktop\go_work\src\day02\eg1\pkg.go(相對于GOPATH/src的路徑為day02\eg1\pkg.go)

內容如下:

package add 

import "fmt"

func Sum(a int,b int) {
 var c int
 c = a + b
 fmt.Println("res",c) 

}

在main進行引入如下:

package main

import (
 "fmt"
 "day02/eg1" /* 引入包 */
)

func main() {
 add.Sum(2,3) /* 調用包 */
 fmt.Println("Hello, World!")
}

圖示:

二、變量

1.單個變量的聲明

go語言中,所有變量都必須先聲明在使用,下面是聲明變量和賦值方法:

  • 先聲明后賦值: var 變量名稱> 變量類型>         賦值:變量的賦值格式: 變量名稱> = 表達式>
  • 聲明的同時賦值:var 變量名稱> 變量類型> = 表達式>   (簡寫為 變量名稱 :=  表達式)

示例:

package main

import "fmt"
func main() {

 var a string /* 聲明一個變量名為a,類型為字符串的變量 */
 a = "wd" /* 對a變量賦值*/
 var age int = 22 /* 聲明并賦值變量 */
 fmt.Println(a,age)
}

2.多個變量聲明

  • 先聲明后賦值:var 變量1>,變量2>,變量3>  變量類型>     賦值 : 變量1>,變量2> =  值1,值2
  • 聲明同時賦值 :var  變量1>,變量2> = 值1,值2   可簡寫為: 變量1>,變量2> = 值1,值2
  • 多個變量還可以使用var()聲明

示例:

package main

import "fmt"
func main() {

 var a,b int
 a,b = 1,2
 var c,d = 3,"wd" /* 類型自動推斷 */
 e, f := 4, "hello" /* 簡寫 */
 fmt.Println(a,b,c,d,e,f)
}

使用var()聲明

package main

import "fmt"

func main() {
 var (
 a int //默認值為0
 b string // 默認值為空字符串("")
 c = 3 
 )
 fmt.Println(a,b,c)
}

3.變量名

命名原則:

  • 首字符可以是任意的Unicode字符或者下劃線
  • 剩余字符可以是Unicode字符、下劃線、數字
  • 不能作為用以下關鍵字作為變量名

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

4.可見性

可見性即對包外可見,當其他包調用當前包的變量時候是否允許可見(可訪問)。

  • 變量開頭字符大寫,表示可見
  • 變量開頭字母非大寫,則表示私有,不可見

 5.變量的作用域

  • 函數內定義的變量稱為局部變量,其作用域在函數內
  • 函數外定義的變量稱為全局變量,作用于整個包,并且該變量首字母大寫,則對其他包可見。

三、常量

常量是一個簡單值的標識符,在程序運行時,不會被修改的量。

常量中的數據類型只可以是布爾型、數字型(整數型、浮點型和復數)和字符串型。

定義常量語法:

const 名稱 類型 = value

多個常量定義語法:

const (
 a = 0 //類型自動推倒
 b = 1
 c = 2
)

iota解釋:

iota,特殊常量,可以認為是一個可以被編譯器修改的常量。

在每一個const關鍵字出現時,被重置為0,然后再下一個const出現之前,每出現一次iota,其所代表的數字會自動增加1。

iota 可以被用作枚舉值:

const (
 a = iota
 b = iota
 c = iota
)

第一個 iota 等于 0,每當 iota 在新的一行被使用時,它的值都會自動加 1;所以 a=0, b=1, c=2 可以簡寫為如下形式:

const (
 a = iota
 b
 c
)

用法:

package main

import "fmt"

func main() {
 const (
   a = iota //0
   b   //1
   c   //2
   d = "ha" //獨立值,iota += 1
   e   //"ha" iota += 1
   f = 100 //iota +=1
   g   //100 iota +=1
   h = iota //7,恢復計數
   i   //8
 )
 fmt.Println(a,b,c,d,e,f,g,h,i)
}

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

您可能感興趣的文章:
  • 關于Golang變量初始化/類型推斷/短聲明的問題
  • go語言 全局變量和局部變量實例
  • 淺談golang并發操作變量安全的問題
  • go語言的初始化順序,包,變量,init詳解
  • go語言的工作空間和GOPATH環境變量介紹
  • Golang 變量申明的三種方式
  • django template實現定義臨時變量,自定義賦值、自增實例
  • Golang常用環境變量說明與設置詳解
  • django框架模板中定義變量(set variable in django template)的方法分析
  • go語言同步教程之條件變量
  • 詳解Go語言變量作用域

標簽:滄州 瀘州 東營 阿壩 晉中 駐馬店 昭通 泰安

巨人網絡通訊聲明:本文標題《go語言學習之包和變量詳解》,本文關鍵詞  語言學,習之,包,和,變量,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《go語言學習之包和變量詳解》相關的同類信息!
  • 本頁收集關于go語言學習之包和變量詳解的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 男女滚床单的视频从下面亲到上面的视频| 3—12呦??女视频入口| 女女蕾丝边一区二区三区| 精品玖玖| 啊太深?拔出来?痛曰本MV| 亚洲 另类 小说 合集| 久久精品国产亚洲AV无码19月| 苍井空电影《色欲迷墙》| 成品网站1688免费入口网页版怎样| 互磨花蒂 磨镜| 黄色辣文| 久久精品国产亚洲AV无码19月| 看美女黄色片| 西门庆无删减版三级在线看| 催眠美妇肉奴系统| 国产免费又爽又黄又刺激的视频| 牟定县| 男人边吻奶边挵进去欧美| 桃花岛亚洲精品tv自拍网站| 欧美日韩一区二区在线观看| 成本大片35分钟免费播放| 忘穿内裤被同桌摸喷水| 日本人videos18videos在线看| 欧美激情一级二级三级在线视频| 无码无遮挡刺激喷水视频| 亚洲AV秘?无码不卡在线观看| x8x8精品高清一区二区| 榴莲视频污| 亚洲欧美国产精品久久久| 日本大胆人体艺术| 粗一硬一长一进一爽一小说| 国产成人精品s8sp视频| 黑人极品巨大videoshd的设计| 色多多app无限看老版ios下载优势| 少妇高潮a 6 2v久久A片免| 再深一点灬舒服灬太大的用户评价 | 久久99国产亚洲精品| 自由 XXX 性别 视频| beeg-日本beeg.黑人| 精品日韩欧美91| 24小时日本电影在线观看.www|