付费视频,请购买课程( ¥2,000.00 )后再观看

VibeCoding: 合约间调用与权限控制实现

5次播放
2026-05-16

视频 AI 总结:

该视频讲解了一个智能合约编程作业:基于已有的 Bank 合约,通过接口、修饰符以及 Admin 合约实现合约间调用与权限控制。核心是让 Admin 合约成为 BigBank 的 Owner,只有 Admin 才能调用 withdraw 取款。部署后需手动转移 Owner,用户存款后必须通过 Admin 合约才能取出资金。视频还强调了 receive 函数的重要性——缺少会导致转账失败,以及资金锁死的风险。

关键信息:

  1. 作业要求:在 Bank 合约基础上,利用 iBANK 接口、modify 修饰符,引入独立 Admin 合约作为 BigBank 的 Owner。
  2. 部署后必须调用 transferOwnership 将 BigBank 的 Owner 转移给 Admin 合约地址。
  3. 调用流程:EOA 用户 → Admin 合约 → BigBank 合约(只有 Owner 可 withdraw)。
  4. 实际应用:模拟多人管理公司资金(如董事会通过合约共同管理)。
  5. 代码实现要点:继承、modify 控制存款条件、Owner 转移函数。
  6. 测试验证:直接调用 withdraw 会失败;通过 Admin 合约的 withdraw 才能成功取出资金。
  7. 注意事项:合约接收 ETH 必须实现 receive 或 fallback 函数,否则转账失败;资金进出应对称,否则可能锁死。