Jestem nowy w Swift. Mam klasy bazowej:Jak podklasować klasę tablicową w Swift?
class foo{}
Chcę zaimplementować klasę kolekcji foo:
class foos: Array<foo>{}
Ale kompilator narzeka:
dziedziczenie z nieprzestrzegania protokołu, nie- typ klasy 'Array'
Próbowałem innej składni (np. [foo]
i NSMutableArray<foo>
), ale żaden z nich nie przechodzi testu kompilatora.
To powinno być proste, ale mam googled cały dzień i nie mogłem go rozwiązać. Czy ktokolwiek wie, czy jest to możliwe, a jeśli tak, to czy poprawna składnia?
Dzięki, Josh. Nie zdawałem sobie sprawy, że Array jest strukturą. Szkoda, że nie mogłem zrobić tego, czego chcę, ale to, co sugerujesz, jest najlepsze, co mogę zrobić (A ma B zamiast A jest B). – Alex
Chociaż i tak jest to niemożliwe ... Ogólnie rzecz biorąc, istnieje wiele powodów, dla których warto preferować kompozycję do dziedziczenia, zwłaszcza gdy nie masz własnej klasy bazowej. http://pl.wikipedia.org/wiki/Composition_over_inheritance#Benefits –