# Lifetimes (Rust) > Adnotacje lifetime, reguły elizji, lifetime 'static, lifetime w struct, lifetime bounds - 20 pytań z rozmów - Mid-Level - [Pytania z rozmów: Rust](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne.md) ## 1. Jaki jest główny cel lifetime w Rust? **Odpowiedź** Lifetime pozwalają compilerowi zweryfikować, że wszystkie reference są poprawne przez cały czas ich użycia. Gwarantują, że reference nigdy nie przeżyje danych, do których się odwołuje, zapobiegając dangling reference. Borrow checker używa lifetime do walidacji bezpieczeństwa pamięci w czasie kompilacji, bez narzutu w czasie wykonania. ## 2. Jakiej składni używa się do oznaczenia lifetime na reference? **Odpowiedź** Lifetime są oznaczane apostrofem, po którym następuje nazwa, zazwyczaj mała litera jak 'a. Składnia &'a T oznacza reference do T z lifetime 'a. Zgodnie z konwencją, dla generycznych lifetime używa się 'a, 'b, 'c, ale po apostrofie można użyć dowolnego poprawnego identyfikatora. ## 3. Co oznacza lifetime 'static w Rust? **Odpowiedź** Lifetime 'static wskazuje, że reference może żyć przez cały czas trwania programu. String literale takie jak "hello" automatycznie mają lifetime 'static, ponieważ są osadzone w binarce. Globalne stałe oraz wartości utworzone za pomocą Box::leak również mają ten lifetime. Uwaga: 'static nie oznacza, że wartość istniała od początku programu, lecz że może żyć aż do końca. ## Jeszcze 17 dostępnych pytań - Ile reguł elizji lifetime compiler Rust stosuje automatycznie? - Dlaczego funkcja fn longest(x: &str, y: &str) -> &str się nie kompiluje? Zarejestruj się za darmo: https://sharpskill.dev/pl/login ## Inne tematy rekrutacyjne Rust - [Podstawy Rusta](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/rust-basics.md): 25 pytań, Junior - [Ownership & Borrowing](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/ownership-borrowing.md): 22 pytań, Junior - [Structs & Enums](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/structs-enums.md): 20 pytań, Junior - [Obsługa błędów](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/error-handling.md): 18 pytań, Junior - [Kolekcje](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/collections.md): 20 pytań, Junior - [Moduły i pakiety](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/modules-packages.md): 18 pytań, Junior - [Traits](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/traits.md): 22 pytań, Mid-Level - [Generics](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/generics.md): 20 pytań, Mid-Level - [Iterators & Closures](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/iterators-closures.md): 22 pytań, Mid-Level - [Smart Pointers](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/smart-pointers.md): 22 pytań, Mid-Level - [Concurrency Basics](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/concurrency-basics.md): 20 pytań, Mid-Level - [async/await](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/async-await.md): 22 pytań, Mid-Level - [Testing](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/testing.md): 18 pytań, Mid-Level - [Cargo & Ecosystem](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/cargo-ecosystem.md): 18 pytań, Mid-Level - [Pattern Matching](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/pattern-matching.md): 18 pytań, Mid-Level - [Makra](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/macros.md): 20 pytań, Mid-Level - [Serde i serializacja](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/serde-serialization.md): 20 pytań, Mid-Level - [Unsafe Rust](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/unsafe-rust.md): 20 pytań, Senior - [Zaawansowane traity](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/advanced-traits.md): 22 pytań, Senior - [Zaawansowane Lifetime](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/advanced-lifetimes.md): 20 pytań, Senior - [Type System](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/type-system.md): 20 pytań, Senior - [Tokio & Async I/O](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/tokio-async.md): 22 pytań, Senior - [Optymalizacja Wydajności](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/performance-optimization.md): 20 pytań, Senior - [Memory Management](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/memory-management.md): 20 pytań, Senior - [Web Frameworks](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/web-frameworks.md): 22 pytań, Senior - [Database Integration](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/database-integration.md): 20 pytań, Senior - [Wzorce projektowe w Rust](https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/design-patterns.md): 20 pytań, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/pl/technologies/rust/pytania-rekrutacyjne/lifetimes