Golang 入門幸運飛艇平台出租系列Go語言基礎文法及需要注意的坑

來源:互聯網
上載者:User

GO語言幸運飛艇平台出租QQ2952777280【話仙源碼論壇】hxforum.com【木瓜源碼論壇】papayabbs.com 基礎文法

最好是對照上面的例子,一個一個敲出來,這樣效果最好。

下面是一個Go 程式的基本結構,包含(包聲明,引入包,函數等)

複製代碼
package main // 定義包名,package main表示一個可獨立執行的程式,每個 Go 應用程式都包含一個名為 main 的包。

import "fmt" // 匯入需要使用的包(的函數,或其他元素)

func main() { // 程式的入口函數。main 函數是每一個可執行程式所必須包含的,一般來說都是在啟動後第一個執行的函數。
fmt.Println("Hello, World!")
}
複製代碼

GO語言注意的坑

不管學啥,剛開始都會遇到各種各樣的坑。下面就來總結下學習go語言的過程中,遇到的各種坑。

  1. 寫C# 的人都會將 “{” 獨立一行,但是這在go 裡面是錯誤的 “{” 必須更方法體 在同一行。我第一次寫go 的就犯了這個錯誤,還不知道錯誤在哪。

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

  1. if…else 語句中的 else 必須和 if 的 ’ } ’ 在同一行,否則編譯錯誤

複製代碼
var a int = 30

if a < 20 {
fmt.Print("a<20")
} else {
fmt.Print("a>=20")
}
複製代碼

  1. 包名的定義。你必須在源檔案中非注釋的第一行聲明包名,如:package main。package main表示一個可獨立執行的程式,每個 Go 應用程式都包含一個名為 main 的包。

package main

  1. 在 Go 程式中,一行代表一個語句結束。每個語句不需要像 C 家族中的其它語言一樣以分號 ; 結尾,因為這些工作都將由 Go 編譯器自動完成。

如果你打算將多個語句寫在同一行,則必須使用 ; 人為區分,但在實際開發中我們並不鼓勵這種做法。

fmt.Println("Hello, World!")
fmt.Println("www.fpeach.com")

  1. main()函數是每一個可執行程式所必須包含的,一般來說都是在啟動後第一個執行的函數。然而,每個package 中,只能有一個main() 函數,否則會報main redeclared in this block previous declaration at .. 的錯誤。

複製代碼
 package main

 import "fmt"

func main() {
/ 這是我的第一個簡單的程式 /
fmt.Println("Hello, World!")
}
複製代碼

  1. 當函數、結構等標識符以一個大寫字母開頭,如:GetInfo,那麼使用這種形式的標識符的對象就可以被外部包的代碼所使用,這被稱為匯出(像物件導向語言中的 public);標識符如果以小寫字母開頭,則對包外是不可見的,但是他們在整個包的內部是可見並且可用的(像物件導向語言中的 protected )。

複製代碼
// 公有函數,可以被外部包的代碼所使用
func Test() {
.
.
.
}

// 私人函數,包的內部是可見、
func test2() {
.
.
.
}
複製代碼

  1. 標識符用來命名變數、類型等程式實體。一個標識符實際上就是一個或是多個字母(A~Z和a~z)數字(0~9)、底線_組成的序列,但是第一個字元必須是字母或底線而不能是數字。

以下是無效的標識符:

1ab(以數字開頭)
case(Go 語言的關鍵字)
a+b(運算子是不允許的)

  1. 錯誤 no new variables on left side of := ,意思是,“左邊一個新的變數也沒有!”

func main() {
var b int = 20
b := 30
fmt.Print(b)
}
解決辦法就是:對於x,y:=....這種形式,只要把其中的一個變數命名成新的就可以了。

  1. 不能使用++自增或- -自減運算子初始設定變數和對變數賦值

複製代碼
package main

import "fmt"

func main(){
var a int = 10
var b int = a++

var c int = 20c = a++fmt.Print(a, b, c)

}

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.