Zmienne

Zmienne deklarowane są za pomocą dwóch słów kluczowych:

var a = 1

let b = 2

var deklaruje zmienną, a let zmienną, która nie może zostać zmieniona (stała).

Typ zmiennej jest ustalany podczas deklarowania zmiennej i nigdy się nie zmienia.

Funkcja

func f() {
// …
}

func sum(_ x:Int, _ y:Int) -> Int
{
    let result = x + y
    return result
}

Użycie podkreślenia i spacji przy parametrze funkcji, powoduje ukrycie zewnętrznego parametru.

Importowanie modułów

import MyModule

Moduł może zawierać wiele plików.

Typy obiektów

Deklaracje klas, struktur lub wyliczenia.

class MyType
{
func g()
{
}
}

struct MySimpleType
{
}

enum Mode
{
}

Utworzenie obiektu klasy i wywołanie funkcji składowej:

let m = MyType()
m.g()

self

Słowo kluczowe self umożliwia wywołanie składowych z poziomu obiektu.

inout

Słowo kluczowe modyfikuje wartość parametru przekazywanego do funkcji.

func swap(_ a: inout Int, _ b: inout Int)
{
    let c = a
    a = b
    b = c
}

Wywołanie funkcji odbywa się przez dodanie & przed nazwą zmiennej, co powoduje przekazanie adresu zmiennej:

swap(&a, &b)

Funkcja jako wartość

func invoke(_ f:() -> ())
{
    f()
}

Funkcje anonimowe

invoke({() -> () in print(„world”)})