「GO言語」関数の引数に構造体を渡すサンプル
書式
func 関数名( 変数名 構造体名)
使用例
package main
import "fmt"
type Books struct {
title string
author string
subject string
book_id int
}
func main() {
var bkA Books /* 構造体Books型の変数bkA */
var bkB Books /* 構造体Books型の変数bkB */
/* 変数bkAのフィールドを設定 */
bkA.title = "Goコース"
bkA.author = "www.arkgame.com"
bkA.subject = "Go言語入門"
bkA.book_id = 1111
/* 変数bkBのフィールドを設定 */
bkB.title = "Pythonコース"
bkB.author = "www.arkgame.com"
bkB.subject = "Python言語入門"
bkB.book_id = 2222
/* bkA情報を出力 */
fmt.Println("構造体Aのメンバー変数の値:")
printBook(bkA)
/* bkB情報を出力 */
fmt.Println("構造体Bのメンバー変数の値:")
printBook(bkB)
}
func printBook( book Books ) {
fmt.Printf( "Book タイトル : %s\n", book.title)
fmt.Printf( "Book 著者 : %s\n", book.author)
fmt.Printf( "Book テーマ : %s\n", book.subject)
fmt.Printf( "Book 番号 : %d\n", book.book_id)
}
実行結果
>go run sample.go
構造体Aのメンバー変数の値:
Book タイトル : Goコース
Book 著者 : www.arkgame.com
Book テーマ : Go言語入門
Book 番号 : 1111
構造体Bのメンバー変数の値:
Book タイトル : Pythonコース
Book 著者 : www.arkgame.com
Book テーマ : Python言語入門
Book 番号 : 2222