Published: 20 Sept 2020 › Updated: 20 Sept 2020
合约中堆栈太深引发的错误 / 学习智能合约#24
今天在设计一个场外合约时遇到了一个错误,如上图所示:堆栈太深!
struct OrderMessage
{
uint256 orderNumber;
string typeOfPayment;
string collectingAccount;
string sellerSteem;
address sellerTron;
string buyerSteem;
address buyerTron;
uint256 amount;
uint256 price;
uint256 orderCreated;
uint256 orderValidity;
uint256 submitTime;
State state;
}
如上所示,如果一个结构体有太多变量,或是函数有太多参数就会引发堆栈太深的错误,必须要删除些变量才行。在以太坊中这个上限是16个,在波场中13个就会引发。
所以,在设计中不能真把区块链当数据库来存储,很多变量应该打包在一个变量中,或是用IPFS来存储大部分的变量,区块链只存储必要的数据,这样才是一个好的方案。
Leave 合约中堆栈太深引发的错误 / 学习智能合约#24 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 等
- 中医进校园活动反响热烈
- 猪价低伤农,猪价贵伤民