一、在Solidity中,payable是一个修饰符,用于指定一个函数可以接收token(Ether)转账。当一个合约的函数被标记为payable时,用户可以在调用该函数时向合约发送token。如果没有将函数标记为payable,则调用函数时发送token会导致错误。
如下案例:
pragma solidity ^0.8.0; contract PayableExample { // 事件,用于记录接收到的token event Received(address sender, uint256 amount); // 接收token的payable函数 function receive() external payable { // 当用户调用此函数时,可以向合约发送token // 函数内部可以通过msg.value获取发送的token数量(单位:wei) uint256 receivedAmount = msg.value; // 触发事件,记录接收到的token emit Received(msg.sender, receivedAmount); } }
讯享网

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/54240.html