|
از نسخهٔ 1.23، Go پشتیبانی از
پیمایشگرها
(iterators) را اضافه کرده که به ما اجازه میدهد تقریباً
روی هر چیزی |
|
![]()
|
|
|
|
|
بیایید دوباره نوع |
|
|
|
|
|
|
All یک پیمایشگر برمیگرداند که در Go تابعی با امضای ویژه است. |
|
|
تابع پیمایشگر تابع دیگری را بهعنوان پارامتر
میگیرد که طبق قرارداد |
|
|
پیمایش نیازی به یک ساختار دادهی زیربنایی ندارد و حتی
لازم نیست متناهی باشد! این تابع پیمایشگری روی اعداد
فیبوناچی برمیگرداند: تا زمانی که |
|
|
|
|
|
|
چون |
|
|
بستههایی مثل slices
توابع مفید زیادی برای کار با پیمایشگرها دارند.
برای مثال، |
|
|
بستههای کتابخانهٔ استاندارد حالا ابزارهای کمکی
پیمایشگر هم دارند. برای مثال، |
|
|
|
|
وقتی حلقه به |
|
|
مثال بعدی: خطاها.