【Go】iotaの使い方メモ

更新日:2025/5/17/(土) 06:14

タグ:Go

概要

iotaについて

const ( A = iota // 0 B // 1 C // 2 )

状態や種別の識別子

type UserStatus int const ( StatusActive UserStatus = iota StatusSuspended StatusDeactivated )

フラグのビット値管理(ビットマスク)

const ( FlagRead = 1 << iota // 1 << 0 → 0001 FlagWrite // 1 << 1 → 0010 FlagDelete // 1 << 2 → 0100 ) func hasPermission(flags, permission int) bool { return flags&permission != 0 }

エラーコード番号の整理

type ErrorCode int const ( ErrNotFound ErrorCode = iota + 1000 // 1000 ErrInvalidRequest // 1001 ErrPermissionDenied // 1002 )

iota利用時の注意したいこと