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