Lifetimes
Vi kallar tiden variablen lever för en lifetime. Att leva och vara i scope är inte samma sak då lifetimen av en variable tar slut när den frigörs(free) när den förstörs/[[destrueras|Destructors]].
int A=1; // ----------------+-- 'a
int main() { // |
int b; // ---------+-- 'b |
{ // | |
int c = 5; // -+-- 'c | |
//more code // | | |
} // -+ | |
// | |
} // ---------+ |
// |
När minnet har tagits tillbaka har lifetimen tagit slut. Lifetimes definierar när vi har åtkomst till variabler och hur länge de existerar. I ovan exempel har vi 3 variabler som har lifetimes inom 3 olika scopes. A finns åtkomligt i hela exemplet. b finns åtkomligt i hela [[funktionens|Functions]] scope. c finns endast i det lilla inre scopet.