首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无条件国家变革

无条件国家变革
EN

Ethereum用户
提问于 2021-02-21 22:14:59
回答 1查看 22关注 0票数 0

我是否可以强迫更改变量的值,而不注意require语句?例如,我有下一个代码:

代码语言:javascript
复制
contract_runs = contract_runs + 1;
success = exchange();
require(success);

我希望exchange函数启动的更改仅在successtrue的情况下应用,但无论该变量的值如何,都要增加contract_runs

EN

回答 1

Ethereum用户

回答已采纳

发布于 2021-02-22 00:54:36

如果exchange在另一个契约中,您可以使用try/catch。

代码语言:javascript
复制
try anotherContract.exchange() {
  // succeeded
}
catch (bytes memory err) {
  // failed
}

如果是在相同的契约中,您可以使用this.exchange(),只需知道它将更改msg.sender,并要求exchange是公共的或外部的。

票数 1
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/93771

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档