Cecha odnosi się do grupy metod zdefiniowanych dla określonego typu. Cechy są niesamowite, ponieważ zapewniają abstrakcję funkcjonalności i logiki, którą można udostępnić między wieloma typami.
Cechy wspierają konkretne i abstrakcyjne metody, jak zobaczymy w tym artykule.
Rdza Zdefiniuj cechę
Aby zdefiniować cechę w rdzy, używamy słowa kluczowego cechy, a następnie nazwa i ciało cechy. Ciało cechy może zawierać metodę betonową lub abstrakcyjną.
Składnia jest jak pokazana:
TRAITTRAITNAMEZauważ, że metoda cechy zawiera i samozatrudniony. To musi być pierwszy parametr w metodzie, a inne parametry należy podać po.
Informacje o cechachW powyższym kodzie definiujemy cieśnin o nazwie Info zawierający metody abstrakcyjne. Obiekt samochodowy może użyć powyższych metod. Ponieważ jednak metoda opisu i wartości przebiegu może się różnić w zależności od samochodu, logika musi być wyraźnie stosowana.
Rust Eld Cech
Po zdefiniowaniu cechy możemy jej wdrożyć. Składnia implementacji metody cechy jest podobna do metody struktury.
Rozważ poniższy przykład:
tactinfoW powyższym przykładzie definiujemy strukturę, która przechowuje informacje dla pojazdu. Następnie możemy wdrożyć metody, jak pokazano powyżej.
W głównej funkcji możemy mieć instancje struktur pojazdu, jak pokazano:
fnmain ()W powyższym kodzie definiujemy dwa przypadki struktury pojazdu o właściwościach zaimplementowanych inaczej.
Wzywanie metod cech
Po wdrożeniu metod cechy możemy wywołać metodę za pomocą notacji kropkowej, jak pokazano:
println!("", samochód.opis());To powinno powrócić:
Model: Camry, producent: Toyota, cena: 25295Wniosek
Ten przewodnik zapewnia podstawy pracy z cechami w języku rdzy. Rozważ dokumentację, aby dowiedzieć się więcej.