1. 源文件结构
示例:
// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.4.16 <0.9.0;
contract SimpleStorage {
uint storedData;
function set(uint x) public {
storedData = x;
}
function get() public view returns (uint) {
return storedData;
}
}
源文件中可以包含任意多个合约定义 、导入源文件指令 、 版本标识指令、 结构体 、 枚举和函数 定义。
SPDX许可标识
SPDX:The Software Package Data Exchange
// SPDX-License-Identifier: MIT // 常见,开源
// SPDX-License-Identifier: UNLICENSED // 私有,或者无授权
版本标识
pragma solidity ^0.8.4;
// 或者
pragma solidity >=0.4.16 <0.9.0;
ABI Coder Pragma
pragma experimental ABIEncoderV2