创建智能合约
$ eosiocpp -n ${contract}
运行上面的命令会在./${project}目录下创建一个空的项目,它包含3个文件。
${contract}.abi ${contract}.hpp ${contract}.cpp
有些情况我们发现没有 hpp 文件,所以 hpp 是可有可无的。
${contract}.hpp 这是合约的头文件,可以包含一些变量,常量和函数的声明。
${contract}.cpp 这是合约的源码文件,包含合约的具体实现。
作用类似以太坊的 ABI 文件。 ABI( Application Binary Interface)文件是一个JSON格式的描述文件,说明了如何在他们的JSON和二进制之间转化用户的action。
ABI文件也同时说明了如何转换数据库的状态。一旦你用了ABI描述了你的合约,开发人员就和用户就可以和你的合约通过JSON进行交互。
ABI文件可以通过eosiocpp命令使用.hpp文件生成。
$ eosiocpp -g ${contract}.abi ${contract}.hpp