この記事は、Go Type の使用シナリオを紹介する go 言語 チュートリアル コラムによって提供されており、困っている友人の役に立てば幸いです。
Go Type の使用シナリオ
type の使用シナリオ
1. 構造を定義します
// 定义商标结构 //将Brand定义为如下的结构体类型 type Brand struct { } // 为商标结构添加Show()方法 func (t Brand) Show() { }
2. エイリアスを作成します
Go 1.9 バージョンより前は、組み込み型を定義するコードは次のように書かれていました:
type byte uint8 type rune int32
Go 1.9 バージョン以降は次のようになりました:
type byte = uint8 type rune = int32
型を区別するエイリアスと型定義
// 将NewInt定义为int类型 type NewInt int // 将int取一个别名叫IntAlias type IntAlias = int func main() { // 将a声明为NewInt类型 var a NewInt // 查看a的类型名 fmt.Printf("a type: %T\n", a) // 将a2声明为IntAlias类型 var a2 IntAlias // 查看a2的类型名 fmt.Printf("a2 type: %T\n", a2) } a type: main.NewInt a2 type: int
バッチ定義構造
type ( // A PrivateKeyConf is a private key config. PrivateKeyConf struct { Fingerprint string KeyFile string } // A SignatureConf is a signature config. SignatureConf struct { Strict bool `json:",default=false"` Expiry time.Duration `json:",default=1h"` PrivateKeys []PrivateKeyConf } )
単一定義構造
type PrivateKeyConf struct { Fingerprint string KeyFile string } type SignatureConf struct { Strict bool `json:",default=false"` Expiry time.Duration `json:",default=1h"` PrivateKeys []PrivateKeyConf }
以上がGo Typeの利用シーンについて話しましょうの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。