開発環境
- macOS High Sierra - Apple (OS)
- Emacs (Text Editor)
- Go (プログラミング言語)
- Introducing Go: Build Reliable, Scalable Programs Caleb Doxsey (著) (参考書籍)
Head First C ―頭とからだで覚えるCの基本 (David Griffiths (著)、Dawn Griffiths (著)、中田 秀基 (監修)、木下 哲也 (翻訳)、オライリージャパン)の5章(構造体、共用体、ビットフィールド - 独自の構造を使う)、エクササイズ(p. 233)をGoで取り組んでみる。
エクササイズ(p. 233)
コード(Emacs)
package main
import "fmt"
type Equipment struct {
tankCapacity float64
tankPsi int
suitMaterial string
}
type Diver1 struct {
name string
kit Equipment
}
func badge1(d Diver1) {
fmt.Printf(
"名前: %s タンク: %2.2f(%d) スーツ: %s\n",
d.name, d.kit.tankCapacity, d.kit.tankPsi, d.kit.suitMaterial)
}
type Diver2 struct {
name string
Equipment
}
func badge2(d Diver2) {
fmt.Printf(
"名前: %s タンク: %2.2f(%d) スーツ: %s\n",
d.name, d.tankCapacity, d.tankPsi, d.suitMaterial)
}
func main() {
randy1 := Diver1{"ランディ1", Equipment{5.5, 3500, "ネオプレン"}}
randy2 := Diver2{"ランディ2", Equipment{5.5, 3500, "ネオプレン"}}
badge1(randy1)
badge2(randy2)
}
入出力結果(Terminal)
$ go run sample3.go 名前: ランディ1 タンク: 5.50(3500) スーツ: ネオプレン 名前: ランディ2 タンク: 5.50(3500) スーツ: ネオプレン $
0 コメント:
コメントを投稿