2012-09-18 4 views
1

type List []string이고 Insert, DeleteAt 등의 표준 기능을 구현하고 있습니다. range을 구현하여 목록을 쉽게 반복 할 수 있습니다.
나는 그렇게 할 수있는 방법을 찾을 수없는 것 같습니다.구현 범위가

답변

7

Range 키워드가 List 유형에서 작동하므로 범위를 다시 구현할 이유가 없습니다.

var l List 
for i, v := range l { 
    /* whatever */ 
} 
+0

omg .. 나는 'var l * List'를 가지고 있었고'range * l'대신'range l'을했습니다. 감사. – pvinis

2

Go에서 지정된 유형의 범위를 직접 구현할 수 없습니다. 범위는 Go의 내장 데이터 구조 (조각,지도 및 채널 (및 배열))에서만 작동합니다.

+0

범위는 문자열에서도 UTF-8 룬을 반복 처리합니다. (물론 배열에서도 작동해야하지만, Go에서 직접 배열을 사용하는 경우는 거의 없습니다.) – uriel