// 1. 基本的なパターン: 非ゼロ長スライスに append funcCollectNames(users []User) []string { names := make([]string, len(users)) // append to slice initialized with non-zero length for _, u := range users { names = append(names, u.Name) } return names }
// 2. 条件付き append でも検出 funcFilterActive(users []User) []string { names := make([]string, len(users)) for _, u := range users { if u.Active { names = append(names, u.Name) } } return names }
// 3. 変数を経由した append funcTransform(data []int) []string { result := make([]string, len(data)) for _, d := range data { s := strconv.Itoa(d) result = append(result, s) } return result }