Solidity 深入剖析:从基础到实战漏洞分析
1. 函数相关
1.1 函数调用类型
Solidity 有两种基本的函数调用类型:
- 内部调用 :也称为消息调用,不会对以太坊虚拟机(EVM)进行实际调用。
- 外部调用 :属于合约接口的一部分,可以通过交易从其他合约调用。在合约接收大量数据数组时,这些函数效率较高,且外部函数不能进行内部调用。
1.2 函数可见性
函数可见性将 Solidity 分为四种类型:
| 可见性类型 | 描述 |
| — | — |
| 外部(external) | 可从其他合约通过交易调用 |
| 内部(internal) | 只能在合约内部或继承合约中调用 |
| 公共(public) | 合约内外均可调用 |
| 私有(private) | 仅防止其他合约访问或修改合约中的信息,但在公共区块链上仍对全世界可见 |
1.3 特殊函数声明
除了 selfdestruct 操作,函数还可以声明为以下类型:
- 视图(view) :确保函数状态不被修改。
- 纯(pure) :确保函数不读取也不修改函数状态。
- 获取器(getter) :编译器会自动为所有状态变量创建获取器函数,具有外部可见性。
- 回退(fallback) <
超级会员免费看
订阅专栏 解锁全文
493

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



