Solidez - Estruturas
Os tipos de estrutura são usados para representar um registro. Suponha que você queira manter o controle de seus livros em uma biblioteca. Você pode querer rastrear os seguintes atributos sobre cada livro -
- Title
- Author
- Subject
- ID do livro
Definindo uma Estrutura
Para definir um Struct, você deve usar o structpalavra-chave. A palavra-chave struct define um novo tipo de dados, com mais de um membro. O formato da instrução de estrutura é o seguinte -
struct struct_name {
type1 type_name_1;
type2 type_name_2;
type3 type_name_3;
}
Exemplo
struct Book {
string title;
string author;
uint book_id;
}
Acessando um Struct e sua variável
Para acessar qualquer membro de uma estrutura, usamos o operador de acesso de membro (.). O operador de acesso de membro é codificado como um período entre o nome da variável de estrutura e o membro da estrutura que desejamos acessar. Você usaria a estrutura para definir variáveis do tipo de estrutura. O exemplo a seguir mostra como usar uma estrutura em um programa.
Exemplo
Experimente o código a seguir para entender como as estruturas funcionam no 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;
}
}
Execute o programa acima usando as etapas fornecidas no capítulo Aplicativo Solidity First .
Primeiro clique setBook Botão para definir o valor como GRANDE e clique em getBookId para obter o ID do livro selecionado.
Resultado
uint256: 1