サンプルコード
- main.go
package main import ( "fmt" ) type びーぷらうど struct { めんばー []string } func びーぷらうどの設立() びーぷらうど { bp := びーぷらうど{ めんばー: []string{ "shacho", "しんすけさん", }, } return bp } func (bp *びーぷらうど) に彗星の如く現れた(新めんばー string) { bp.めんばー = append(bp.めんばー, 新めんばー) } func (bp *びーぷらうど) ぁっぉ() { var ぁっぉ在籍 bool for _, 社員 := range bp.めんばー { if 社員 == "ぁっぉ" { ぁっぉ在籍 = true } } if ぁっぉ在籍 { fmt.Println("ぉゃっょ") } else { fmt.Println("お前がをぞぞか!") } } func main() { bp := びーぷらうどの設立() bp.に彗星の如く現れた("ときびと") bp.に彗星の如く現れた("いあん") for 社員番号, 社員 := range bp.めんばー { fmt.Printf("社員番号 %d: %s\n", 社員番号, 社員) } bp.ぁっぉ() bp.めんばー = append(bp.めんばー, "ぁっぉ") bp.ぁっぉ() }
実行結果
% go run main.go 社員番号 0: shacho 社員番号 1: しんすけさん 社員番号 2: ときびと 社員番号 3: いあん お前がをぞぞか! ぉゃっょ
追伸
知り合い全員追加しようと思ったらサンプルコードの大半がsliceの初期化で終わってしまうので2人だけ追加しました。他意はございません。あと、id:wozozoはもっとネタにしていいと思う。