首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >实体接口-调用未实现函数的契约

实体接口-调用未实现函数的契约
EN

Ethereum用户
提问于 2022-01-10 15:29:42
回答 1查看 154关注 0票数 0

我是刚接触过坚实和客观的东西。我试图理解这个简单的彩票游戏示例中的代码:

https://github.com/alphachainio/chainlink-lottery/blob/master/ethereum/contracts/

当他们在Lottery.sol第57行中调用Lottery.sol时,我感到很困惑。但是我没有看到randomness()函数在任何契约文件中都没有实现。

下面的答案解释了未实现的函数将在CEth cToken = CEth(_cEtherContract);提供的合同中实现。

https://stackoverflow.com/a/64734548/4488843

但是在GitHub抽奖示例中,我看到函数在任何契约(lottery.sol、randomness.sol和governance.sol)中都没有声明。

是否在调用治理契约的init()函数并设置randomness状态变量时启动该函数?还是我在密码里遗漏了什么?

EN

回答 1

Ethereum用户

回答已采纳

发布于 2022-01-10 15:59:54

对于您的randomness示例,重要的是要知道Solidity为所有公共变量生成getter。在governance契约中,有一个公共变量randomness,它以getter:https://github.com/alphachainio/chainlink-lottery/blob/master/ethereum/contracts/Governance.sol#L6的形式生成上述函数。

通常,在将契约转换到该接口时,如果契约实现了特定的接口,则不执行任何检查。有关这方面的更多信息可以在这里找到:接口是如何初始化的? (还有很多其他问题也解释了这一点;)

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

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

复制
相关文章

相似问题

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