
在编写智能合约代码时,通常使用struct结构,其形式如下:
pragma solidity ^ 0.5.1;
合同测试{
结构动物{
字符串名称;
uint256岁;
}

}
动物是我们定义的结构类型,可以在其中放置任何类型的值.
为什么要使用结构?因为如果要描述一种动物,就需要描述其名称,年龄等. 但是,如果要描述一种新动物,就不可能再次写它. 此操作太麻烦了,因此您可以将此大类集成到一个结构中. 调用此结构时,您需要添加一个新结构. 动物. 这样,添加各种动物非常方便. 以下是一个示例.
pragma solidity ^ 0.5.1;
合同测试{
结构动物{
字符串名称;

uint256岁;
}
function setAnimal()纯公共{
动物记忆动物= Animal(“ English Short”,5);
}
}
上面的示例在5岁以下的短函数中构造了一个结构对象. 这是一种使用过的方法. 如果要构造更多对象,则可以继续以这种方式编写其他对象属性.

以下是一个结构示例,可以在Remix上对其进行测试
pragma solidity ^ 0.5.1;
合同测试{
结构动物{
字符串名称;
uint256岁;
}

映射(uint256 => Animal)动物;
函数setAnimal()应付帐款公共{
动物记忆动物= Animal(“ English Short”,5);
动物[1] =动物;
}
函数getAnimal(uint256 number)公共返回(字符串存储器,uint256){
返回(动物[number] .name
animals [number] .age);
}
}
首先定义动物的结构,然后初始化对象的属性,并通过映射进行映射,最后通过getAnimal函数输出对象的信息. 当输入数字为1时结构体,将输出英文short和5的结果. 如果您想第一次尝试更多的对象,则可以通过动物存储对象名称= Animal(string,uint256);继续进行初始化. 此外结构体,动物[i] =对象名称需要映射为不同的数字. 最后,要获取不同的对象信息,请在调用getAnimal时输入不同的数字,然后会出现不同对象的信息.
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-246319-1.html
杨洋加油