Solidity 中的底层函数与汇编使用
在智能合约开发中,为了解决安全问题,我们需要关注一些关键的技术点,特别是底层函数和汇编的使用。
底层转账和发送函数
如果要使用 transfer 和 send 函数,可以参考以下代码:
address payable addr;
function transferFunds() public {
addr.transfer(500);
bool success = addr.send(500);
}
这展示了底层 transfer 和 send 函数的基本语法。
任意地址类型的底层函数
address payable 和 address 类型都支持三个底层函数: call 、 staticcall 和 delegatecall ,用于与智能合约进行交互。这些函数在 Solidity 内部的不同合约函数调用中,会直接向以太坊虚拟机(EVM)发送指令。不过,官方文档建议仅在万不得已时使用这些函数,因为它们没有安全检查,会破坏 Solidity 的类型安全。
这三个底层函数的返回类型都是元组 (bool success, bytes memory result) 。如
超级会员免费看
订阅专栏 解锁全文
294

被折叠的 条评论
为什么被折叠?



