- Solidity 教程
- Solidity - 主页
- Solidity - 概述
- Solidity - 环境设置
- Solidity - 基本语法
- Solidity - 首次应用
- Solidity - 评论
- 坚固性 - 类型
- Solidity - 变量
- Solidity - 可变范围
- Solidity - 运算符
- 坚固性 - 循环
- Solidity - 决策
- 坚固性 - 弦乐
- Solidity - 数组
- Solidity - 枚举
- Solidity - 结构
- Solidity - 映射
- 坚固性 - 转换
- Solidity - 以太币单位
- Solidity - 特殊变量
- Solidity - 风格指南
- 实体函数
- Solidity - 函数
- Solidity - 函数修饰符
- Solidity - 查看函数
- Solidity - 纯函数
- Solidity - 后备函数
- 函数重载
- 数学函数
- 加密函数
- Solidity 常见模式
- Solidity - 提款模式
- Solidity - 限制访问
- 坚固进阶
- Solidity - 合约
- 坚固性——继承
- Solidity - 构造函数
- Solidity - 抽象合约
- Solidity - 接口
- Solidity - 库
- 坚固性 - 装配
- Solidity - 活动
- Solidity - 错误处理
- Solidity 有用资源
- Solidity - 快速指南
- Solidity - 有用的资源
- 坚固性 - 讨论
Solidity - 结构
结构类型用于表示记录。假设您想跟踪图书馆中的书籍。您可能想要跟踪每本书的以下属性 -
- 标题
- 作者
- 主题
- 图书编号
定义结构体
要定义结构,必须使用struct关键字。struct 关键字定义了一种新的数据类型,具有多个成员。struct 语句的格式如下 -
struct struct_name { type1 type_name_1; type2 type_name_2; type3 type_name_3; }
例子
struct Book { string title; string author; uint book_id; }
访问结构及其变量
要访问结构体的任何成员,我们使用成员访问运算符 (.)。成员访问运算符被编码为结构变量名称和我们希望访问的结构成员之间的句点。您可以使用 struct 来定义结构类型的变量。以下示例显示如何在程序中使用结构体。
例子
尝试以下代码来了解结构在 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; } }
使用Solidity First Application章节中提供的步骤运行上述程序。
首先单击setBook按钮将值设置为 LARGE,然后单击getBookId获取所选书籍 id。
输出
uint256: 1