- Vad är svagt jag i Swift?
- Vad är svagt jag i slutning?
- Vad är okänt själv Swift?
- Vad är skillnaden mellan svag och stark i Swift?
Vad är svagt jag i Swift?
I Swift måste vi använda svagt jag och okänt jag för att ge ARC den information som krävs mellan relationer i vår kod. Utan att använda svag eller okänd säger du i princip till ARC att en viss "stark referens" behövs och du förhindrar att referensräkningen går till noll.
Det som är svagt jag i stängning?
Flyktiga stängningar kräver [svagt jag] om de lagras någonstans eller passeras till en annan stängning och ett föremål inuti dem behåller en referens till stängningen. vakta själv = jag kan i vissa fall leda till fördröjd deallocation, vilket kan vara bra eller dåligt beroende på dina avsikter.
Vad är okänt själv Swift?
Den vanligaste platsen där du kommer att se okända variabler är med stängningar som förklarar [ej ägt jag] - det här betyder "Jag vill referera till mig själv inuti denna stängning men jag vill inte äga det."Varför oägd snarare än svag ? Båda skulle fungera, men låt oss inse det: om jaget är noll i en stängning, har något gått fel!
Vad är skillnaden mellan svag och stark i Swift?
En stark referens innebär att du vill "äga" objektet du refererar till med den här egenskapen/variabeln. Med en svag referens anger du däremot att du inte vill ha kontroll över objektets livstid.