- 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 - view 函数
- Solidity - pure 函数
- Solidity - 回退函数
- 函数重载
- 数学函数
- 加密函数
- Solidity 常用模式
- Solidity - 提款模式
- Solidity - 权限控制
- Solidity 进阶
- Solidity - 合约
- Solidity - 继承
- Solidity - 构造函数
- Solidity - 抽象合约
- Solidity - 接口
- Solidity - 库
- Solidity - 汇编
- Solidity - 事件
- Solidity - 错误处理
- Solidity 有用资源
- Solidity - 快速指南
- Solidity - 有用资源
- Solidity - 讨论
Solidity - 结构体
结构体类型用于表示记录。假设您想跟踪图书馆中的书籍。您可能需要跟踪每本书的以下属性:
- 书名
- 作者
- 主题
- 图书ID
定义结构体
要定义结构体,必须使用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; }
访问结构体及其变量
要访问结构体的任何成员,我们使用成员访问运算符(.)。成员访问运算符在结构体变量名和我们想要访问的结构体成员之间编码为一个句点。您可以使用结构体来定义结构体类型的变量。以下示例演示如何在程序中使用结构体。
示例
尝试以下代码来了解结构体在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第一个应用章节中提供的步骤运行上述程序。
首先点击setBook按钮将值设置为LARGE,然后点击getBookId获取选定的图书ID。
输出
uint256: 1
广告