Appearance
结构体
结构体(Struct
)是一种用户自定义的数据类型,它允许您组合已定义类型的多个元素以创建自己的类型。
示例
以下是一个简单的 Solidity
结构体示例:
solidity
pragma solidity ^0.8.0;
contract MyContract {
struct Person {
string name;
uint age;
}
Person[] public people;
function addPerson(string memory _name, uint _age) public {
Person memory newPerson = Person({
name: _name,
age: _age
});
people.push(newPerson);
}
}
这个 【人】
的结构体包含两个成员变量:名字和年龄。我们在合约中定义了一个 [Person]
数组,并且实现了一个函数 addPerson
来向数组中加入新的人员。
这个函数接受两个参数:新人员的名字和年龄。它创建一个新的 Person
实例,并将其添加到数组中。
例如,当我们使用名称 Alice
和年龄 28
调用 addPerson
函数时,这将在数组中添加一个新的人:
solidity
myContract.addPerson("Alice", 28);
然后,我们可以在钱包或者 Solidity IDE
中查询该人员数组,就可以看到已经添加了一个名为 Alice
、年龄为 28
的人员。