Solidity:源文件结构
SPDX License Identifier
如果源代码可用,则可以更好地建立对智能合约的信任。由于提供源代码总是涉及版权方面的法律问题,Solidity编译器鼓励使用机器可读的SPDX License Identifier。每个源文件都应以一条注释开头,说明其许可证:
// SPDX-License-Identifier: MIT
编译器不会验证该许可证是否属于SPDX允许的列表的一部分,但它会在:ref:bytecode metadata<metadata>
。
如果您不想指定许可证,或者源代码不是开源的,请使用特殊值UNLICENSED。
当然,提供此评论并不能免除您与许可相关的其他义务,比如必须在每个源文件或原始版权所有者中提及特定的许可头。
编译器可以在文件级别的文件中的任何位置识别注释,但建议将其放在文件的顶部。
Pragmas
关键字pragma
版本标识指令,用来启用编译器检查,版本标识指令通常只对本文件有效,所以我们需要把这个版本标识添加到项目中所有的源文件中。如果使用import导入其他的文件,标识并不会从被导入的文件,加入到导入的文件中
版本标注
pragma solidity ^0.5.0;
源文件将既