文章介绍了在Solidity中使用constant关键字定义不可变变量,并提供了一个ERC20代币合约中定义最大供应量的示例代码。
constant
本文详细介绍了Solidity语言的基本数据类型,包括无符号整数(uint256),布尔值(bool)和地址(address)。通过代码示例展示了如何声明和返回这些类型,并强调每种类型的特殊性和注意事项。文章结构清晰,适合对Solidity初学者进行引导。
这篇文章详细介绍了Solidity中的字符串处理,包括其动态大小、UTF-8编码、字符串长度的计算、字符访问及Unicode支持等核心概念。此外,还介绍了在Solidity 0.8.12版本中新增的字符串拼接功能。文章通过代码示例清晰地展示了每个概念,使读者能更好地理解和应用这些知识。
文章介绍了 Solidity 语言中嵌套映射(Nested Mappings)的使用方法,包括如何声明、设置和获取嵌套映射的值,并指出嵌套映射不能作为函数的返回类型或迭代。
文章讨论了如何在Solidity智能合约中实现ERC20标准的事件记录,强调了事件记录在状态变化时的重要性,并通过代码示例详细展示了如何在ERC20合约中添加Transfer和Approval事件。
文章详细介绍了 Solidity 中的继承机制,包括如何使用 virtual 和 override 关键字实现函数重写,如何使用 super 关键字调用父合约的函数,以及如何处理多重继承和构造函数初始化。
virtual
override
super
本文详细介绍了Solidity中的数组和字符串数据结构,包括它们的声明、使用方式以及一些重要的概念如calldata和memory。还提供了多个代码示例来帮助理解这些概念。
calldata
memory
文章介绍了 Solidity 语言中的不可变变量(immutable variables),展示了如何在构造函数中初始化这些变量,并说明了尝试修改这些变量会导致编译错误。
文章介绍了Solidity中的ABI编码和解码,包括abi.encode、abi.decode和abi.encodeWithSignature的使用,并通过实例演示了如何在智能合约中处理函数调用和数据传递。
abi.encode
abi.decode
abi.encodeWithSignature
文章介绍了 Solidity 中的 receive 函数以及如何使用 external 和 payable 修饰符来接收和发送以太币。还包括了如何通过合约调用钱包地址进行以太币转账的示例。
receive
external
payable