Przesłanianie, część 2
Część sekcji Podstawy ścieżki Rust w Coddy. Lekcja 48 z 75.
Gdy przesłaniasz zmienną w Rust, nowa zmienna jest całkowicie niezależna od pierwotnej i wymaga własnej deklaracji mutowalności. Przesłanianie nie dziedziczy mutowalności pierwotnej zmiennej.
let mut mut_val = 7;
// Pierwotna zmienna jest modyfikowalna
{
let mut_val = 8;
// To nowa zmienna, która przesłania zewnętrzną zmienną mut_val
mut_val = 50;
// Wystąpił błąd, ponieważ
// mut_val nie jest modyfikowalna
}
// Tutaj jest to dozwolone
// mut_val nie jest niezmienna w tym zakresie
mut_val = 3;Aby to naprawić, możemy dodać mut w wewnętrznym zakresie:
{
let mut mut_val = 8;
mut_val = 50;
}Wyzwanie
PoczątkującyPopraw podany kod, aby działał bez błędów.
Spróbuj swoich sił
fn main() {
// Popraw ten kod, aby działał
let number = 42;
{
let number = number;
println!("number is {}", number);
number = 100; // To spowoduje błąd
println!("number is {}", number);
}
println!("number is {}", number);
}Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory, część 1
Operatory arytmetyczneOperator moduloSkrócone operacje arytmetyczneOperatory porównaniaPorównywanie ciągów znaków7Podstawowe wejście i wyjście
Wyświetlanie w konsoliOdczytywanie danych od użytkownikaPowtórka – do 120Powtórka – prawda czy fałsz5Operatory, część 2
Operatory logiczne, część 1Operatory logiczne, część 2Powtórka — prosta logikaOperatory logiczne, część 311Funkcje
Deklarowanie funkcjiParametry i argumentyWartości zwracaneWiele wartości zwracanychPowtórka – funkcja SigmaPowtórka – funkcja walidująca14Iterowanie po tablicach
Przewodnik po zakresachUlepszona pętla forPożyczanie w pętliTypowe operacje na tablicach3Zmienne – część 2
Deklarowanie typuKonwencje nazewnictwaWnioskowanie o typiePodsumowanie – inicjalizacja zmiennychRzutowanie typów9Pętle
Pętla for dla sekwencjiPętla whileInstrukcja breakInstrukcja continuePętle zagnieżdżoneEtykiety pętliPętla nieskończonaPodsumowanie — dynamiczne dane wejściowe12Podstawy tablic
Deklarowanie tablicTablica jako parametrDostęp do elementówModyfikowanie tablicPodsumowanie — czytelny wydruk tablicy15Operacje na ciągach znaków
Metody ciągów znakówMakro format!Konwersja ciągów znakówPowtórka — formatowaniePoćwicz samodzielnie: Kompilator Rust online