Vánoční nadílka Vánoční nadílka
Vánoční akce! Daruj lepší budoucnost blízkým nebo sobě. Až +50 % zdarma na dárkové poukazy. Více informací

Lekce 13 - Přetěžování operátorů a užitečné drobnosti ve Swift

Swift OOP Přetěžování operátorů a užitečné drobnosti ve Swift

V minulé lekci, Přetypování a hierarchie objektů ve Swift, jsme se zabývali rozhraním. Zatímco předchozí lekce se daly považovat za nutné, abyste mohli ve Swift skutečně něco tvořit, tato je spíše taková doplňková a klidně se bez ní obejdete. Na druhou stranu není dlouhá a minimálně ponětí o těchto možnostech se vám bude hodit.

Přetěžování operátorů

S +, - nebo třeba * jste se určitě při programování setkali. Používáme je, když provádíme matematické operace s čísly. Pod pokličkou jsou operátory speciální funkce. Čísla je mají definované, my si ale klidně můžeme to samé nadefinovat pro jakýkoliv náš typ (tedy strukturu nebo třídu). Bude to jednoduše metoda, jejíž název je právě daný operátor.

To se občas může hodit, byť samozřejmě můžete mít např. metodu pojmenovanou add(), která dvě instance sečte a vrátí nějaký výsledek.

Pro příklad si můžeme uvést strukturu Point, která reprezentuje bod v 2D prostoru pomocí souřadnic x a y. Zápis vypadá následovně:

struct Point {
    var x: Int
    var y: Int
}

Při častém použití by dávalo smysl připravit si operátor pro sčítání dvou bodů, i samotný zápis bude ve výsledku jednodušší. Deklarujeme tedy bodu operátor + jako jeho statickou metodu:


 

...konec náhledu článku...

Prémiový článek

Prémiový článek

Na itnetwork.cz se nachází největší a nejucelenější česká databáze s výukovými články, jejímž cílem je umožnit kvalitní vzdělání v oblasti IT úplně každému. Měsíčně zobrazíme k milionu článků a sklidíme desítky děkovných emailů, kde nám sdělujete, že jsme vám pomohli k lepšímu zaměstnání nebo vzdělání.

Ačkoli se snažíme držet většinu obsahu úplně zadarmo, udržovat síť v provozu a aktuální stojí obrovské úsilí. Proto je nějaký obsah, jako cvičení nebo odbornějšíčlánky, přístupný pouze za body. Nebojte, nestojí to skoro nic :)

Popis článku

Požadovaný článek má následující obsah:

Ukážeme si, jak definovat operátory pro vlastní typy, včetně vlastních operátorů, a dále několik užitečných drobností ve Swift.

Koupit pouze tento článek

Pro přístup k článku potřebuješ 10 bodů
Na svém účtu máš aktuálně 0 bodů
10 bodů získáš za přidání svého článku na síť nebo za 25 Kč

Koupí článku k němu získáš neomezený přístup a to napořád. Posuneš své znalosti zas kousek dopředu a zároveň nám pomůžeš udržovat celý projekt při životě a pomáhat vám tak k lepší budoucnosti.

Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.

Body získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.

Dobít body můžeš okamžitě např.:

Kartou SMS Převodem
Kartou SMS Převodem

 

Článek pro vás napsal Filip Němeček
Avatar
Autor se příležitostně věnuje vývoji iOS aplikací či těch webových za pomocí frameworku Django. Aktuální projekt: hrejzdarma.cz Twitter: @nemecek_f (neprogramátorské tweety)
Aktivity (2)