|
از نسخهٔ 1.18، Go پشتیبانی از جنریکها (generics) را اضافه کرده است که با نام پارامترهای نوع (type parameters) هم شناخته میشوند. |
|
![]()
|
|
|
|
|
بهعنوان نمونهای از یک تابع جنریک، |
|
|
بهعنوان نمونهای از یک نوع جنریک، |
|
|
|
|
میتوانیم روی نوعهای جنریک هم مثل نوعهای معمولی متد
تعریف کنیم، اما باید پارامترهای نوع را سر جایشان نگه
داریم. نوع ما |
|
|
AllElements همهٔ عناصر List را بهصورت یک اسلایس برمیگرداند. در مثال بعدی روش رایجتری برای پیمایش همهٔ عناصر نوعهای سفارشی را خواهیم دید. |
|
|
|
|
هنگام فراخوانی توابع جنریک، اغلب میتوانیم به
استنتاج نوع (type inference) تکیه کنیم. توجه کنید
که هنگام صدا زدن |
|
|
… البته میتوانستیم آنها را صریحاً هم مشخص کنیم. |
|
|
|
مثال بعدی: range روی پیمایشگرها.