1

我有一个type List []string并且我正在实现一些标准功能Insert,例如DeleteAt等。我想实现range这样我可以轻松地迭代列表。
我似乎找不到这样做的方法。

4

2 回答 2

7

没有理由重新实现 range,因为 range 关键字适用于 List 类型。

var l List
for i, v := range l {
    /* whatever */
}
于 2012-09-18T03:41:07.060 回答
2

在 Go 中,不可能为给定的类型自己实现范围。Range 仅适用于 Go 的内置数据结构:切片、映射和通道(以及数组?)。

于 2012-09-18T12:10:28.040 回答