2014-10-23 8 views
6

Vorrei definire un metodo su []T, dove T è un tipo definito.
Sembra che debba definire un nuovo tipo per eseguire questa operazione, ma ciò mi impedisce di utilizzare tutte le funzioni incorporate per le porzioni su questo nuovo tipo (ad esempio len).Tipo di ricevitore non valido [] T ([] T è un tipo senza nome) soluzione alternativa?

È il modo di procedere per eseguire solo le normali funzioni piuttosto che i metodi? (Piace Kinda come append() potrebbe essere un metodo, ma non lo è?)

risposta

10

è possibile definire un tipo di fetta:

type MySliceType []SomeType 
  • È comunque possibile utilizzare operazioni di affettamento e di aggiunta su valori di MySliceType.
  • È possibile definire i metodi su MySliceType.

Non è possibile, tuttavia, memorizzare i metodi di []SomeType.

Problemi correlati