Solidność - Struktury
Typy struktur służą do reprezentowania rekordu. Załóżmy, że chcesz śledzić swoje książki w bibliotece. Możesz chcieć śledzić następujące atrybuty dotyczące każdej książki -
- Title
- Author
- Subject
- Identyfikator książki
Definiowanie struktury
Aby zdefiniować strukturę, musisz użyć rozszerzenia structsłowo kluczowe. Słowo kluczowe struct definiuje nowy typ danych z więcej niż jednym elementem. Format instrukcji struct jest następujący -
struct struct_name {
type1 type_name_1;
type2 type_name_2;
type3 type_name_3;
}
Przykład
struct Book {
string title;
string author;
uint book_id;
}
Dostęp do struktury i jej zmiennej
Aby uzyskać dostęp do dowolnego elementu członkowskiego struktury, używamy operatora dostępu do elementu członkowskiego (.). Operator dostępu do elementu jest zakodowany jako okres między nazwą zmiennej strukturalnej a elementem struktury, do którego chcemy uzyskać dostęp. Struct użyłbyś do zdefiniowania zmiennych typu struktury. Poniższy przykład pokazuje, jak używać struktury w programie.
Przykład
Wypróbuj poniższy kod, aby zrozumieć, jak działają struktury w Solidity.
pragma solidity ^0.5.0;
contract test {
struct Book {
string title;
string author;
uint book_id;
}
Book book;
function setBook() public {
book = Book('Learn Java', 'TP', 1);
}
function getBookId() public view returns (uint) {
return book.book_id;
}
}
Uruchom powyższy program, wykonując kroki opisane w rozdziale Solidity First Application .
Pierwsze kliknięcie setBook Przycisk, aby ustawić wartość na DUŻĄ, a następnie kliknij getBookId aby uzyskać identyfikator wybranej książki.
Wynik
uint256: 1