Home | 简体中文 | 繁体中文 | 杂文 | 知乎专栏 | 51CTO学院 | CSDN程序员研修院 | Github | OSChina 博客 | 腾讯云社区 | 阿里云栖社区 | Facebook | Linkedin | Youtube | 打赏(Donations) | About
知乎专栏多维度架构

36.2. 只能合约文件

创建智能合约

		
$ eosiocpp -n ${contract}		
		
		

运行上面的命令会在./${project}目录下创建一个空的项目,它包含3个文件。

		
${contract}.abi ${contract}.hpp ${contract}.cpp		
		
		

有些情况我们发现没有 hpp 文件,所以 hpp 是可有可无的。

36.2.1. hpp 头文件

${contract}.hpp 这是合约的头文件,可以包含一些变量,常量和函数的声明。

36.2.2. cpp 合约代码文件

${contract}.cpp 这是合约的源码文件,包含合约的具体实现。

36.2.3. abi 文件

作用类似以太坊的 ABI 文件。 ABI( Application Binary Interface)文件是一个JSON格式的描述文件,说明了如何在他们的JSON和二进制之间转化用户的action。

ABI文件也同时说明了如何转换数据库的状态。一旦你用了ABI描述了你的合约,开发人员就和用户就可以和你的合约通过JSON进行交互。

ABI文件可以通过eosiocpp命令使用.hpp文件生成。

			
$ eosiocpp -g ${contract}.abi ${contract}.hpp