go 語言中可以通過匿名field來實現繼承的效果,
type t1 struct
func (t t1) log()
func (t *t1) print()
type t2 struct
t2 t2{}
可以通過t2.log()直接訪問t1的method,就像物件導向的繼承之後一樣訪問,不過這裡要注意的傳遞到log的是t1而不是t2
struct
所以下面的宣告會出現命名衝突
struct
匿名field的成員field和普通的field操作一樣
t2 =t2{}
t2.a
唯一不同的是在初始化的時候不能這樣寫:
t2 =t2
Go語言中的常量
常量,一經定義不可更改的量。功能角度看,當出現不需要被更改的資料時,應該使用常量進行儲存,例如圓周率。從語法的角度看,使用常量可以保證資料,在整個執行期間內,不會被更改。例如當預處理器的架構型別,可以保證不被更改。語法如下 const 常量名 可選的型別 常量值 const c1 int 1000g...
go語言中的map
package main import fmt sort func main 同上 var b map int string make map int string 通過make建立map var c make map int string 簡化寫法 d make map int string 設定...
go語言中的函式
package main import fmt func main 這裡傳入的是乙個slice,但外部變數確改變了,說明是位址拷貝。c d fmt.println d e 2 這裡把e的位址傳遞過去 d e fmt.println e 函式e賦值給f f e f 匿名函式 g func g 使用閉包...