Published: 16 Jul 2021 › Updated: 16 Jul 2021
波场中返回数组 / 学习智能合约#43
因为波场中的TVM中还只是支持solidity 0.5的版本,在返回数组类型的值时还是不方便。在新版的solidity 0.8的版本中已经不用特别声明了,但是在波场中还是很麻烦,因为它还没有更新到新版本。看来波场要加油抄啊!
returns(address[] memory)比如这个返回值,在波场中还不支持,必须在最前头加上pragma experimental ABIEncoderV2;才可执行。这也导致了在返回一个结构体数值时会遇上麻烦!
struct TaskMessage
{
string hash;
address promoter;
address hunterA;
address token;
address[] hunters;
string[] reasonHashs;
uint256 bonus;
uint256 taskStart;
uint256 taskDeadLine;
State state;
}
mapping(uint256 => TaskMessage) public tasks;
如上代码,public属性的函数会自动生成一个getter函数,所以不必特别再去定义一个函数去获取它的值,是可以直接取出来的。这在以太坊中没什么问题,但在波场中却还是一大问题,因为无法获取上述结构体中hunters值!所以,必须再定义一个获取数据的函数,如下所示:
function getHunters(uint256 uid)
public
view
returns(address[] memory)
{
return tasks[uid].hunters;
}
现在处于多链的时代,但明显感到波场有些落伍了,事实上也确实如此。现在都有些不太情愿在波场上开发了,更愿意玩polygon。只是希望波场不要落后太多,也多开放些基金以支持生态的发展。
Leave 波场中返回数组 / 学习智能合约#43 to:
Read more #smartcontract posts
Best Posts From lemooljiang
We have not curated any of lemooljiang's posts yet. But you can encourage our curation team to review posts by visiting them regularly and by referring other readers. Because we give priority to frequently read content.
More Posts From lemooljiang
- Nextjs初体验,和Nuxt的异同
- DeepTutor:AI个性化辅导平台 / ai #57
- ComfyUI:可编程和自动化的PS / ai #56
- 将Neo4j封装进Agent / ai #55
- 闲鱼省钱大法:极限0.5折!
- 对Neo4j批量导入结构化数据 / ai #54
- langchain对neo4j进行交互,写入和查询数据 / ai #53
- 知识图谱和图数据库Neo4j的作用和使用场景 / ai #52
- SpaceX、美股和比特币
- 又是币圈血洗日!
- 链股合流,当币安也开始卖股票啰
- 天涯社区重启,爷青回?
- 诺基亚在AI时代重新杀回来啦
- 《2049:未来10000天的可能》书中的镜像世界为什么不叫元宇宙
- 今天适合吃披萨
- 开通即被封,别再给Claude送人头了!
- 两根内存条引发的“官司”
- AI·Joe V12更新, 更新GPT-5.5和DeepSeek V4 等
- 中医进校园活动反响热烈
- 猪价低伤农,猪价贵伤民