首页 > 分享 > 宠物商店(pet

宠物商店(pet

最新推荐文章于 2024-08-08 11:12:00 发布

Quartz010 于 2018-02-16 22:51:30 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

宠物商店(pet-shop) 学习笔记

truffle 可以算是一个超级强大的 Ethereum 开发工具集, 集各种的功能集一身, 今天, 照着官方的文档, 和 手把手的教程, 完成了其中提供的一个demo.

truffle的目录结构

目录树

demo ├── build │ └── contracts │ ├── Migrations.json │ └── Adoption.json ├── contracts │ ├── Migrations.sol │ └── Adoption.sol ├── migrations │ └── 1_initial_migration.js ├── truffle-config.js ├── truffle.js ├── test │ └──1_initial_migration.js └── src └── ...

12345678910111213141516 contract 此目录就是我们的编写的智能合约所存在的目录, 使用solidity语言编写 migrations 此目录下是用于迁移部署合约的JS的脚本 test 测试合约时所用的测试脚本 src 一个前端的实现, 主要是调用 wed3 的库, 与节点服务器进行RPC

代码分析

合约代码

pragma solidity ^0.4.17; contract Adoption { address[16] public adopters; // 保存领养者的地址 /**func: 领养宠物 para: 领养宠物ID */ function adopt(uint petId) public returns (uint) { require(petId >= 0 && petId <= 15); // 确保id在数组长度内 adopters[petId] = msg.sender; // 保存调用这地址 return petId; //返回当前宠物ID } // 返回领养者 function getAdopters() public view returns (address[16]) { return adopters; } }

1234567891011121314151617

以上是实现宠物领养的合约代码.

指定编译器版本

定义 Adoption 的合约结构

contract {...} 1 定义一个存放地址的定长数组 定义合约函数 adopt
Public类型, 可以被外部访问, uint参数 为调用时传入的要领养的宠物的ID, 返回值就是当前领养的宠物id require() 用于检查变量值是否满足当前条件, 不满足条件则立即抛出异常, 并且对所有的已做修改进行回滚(revert) 使用数组的对应的 ID index 来保存领养者的地址 定义合约函数 getAdopters()<

相关知识

实例分析:宠物商店
宠物商店详细设计说明书
宠物商店网站毕业论文.docx
宠物商店数据库设计
宠物商店
Java上机作业宠物商店
基于ssm宠物商店领养管理系统毕业论文.docx
Java宠物商店
顺平商业街附近周边哪里有宠物商店
宠物商店加盟

网址: 宠物商店(pet https://m.mcbbbk.com/newsview235913.html

所属分类:萌宠日常
上一篇: 长沙RFID皮下植入芯片宠物身份
下一篇: 宠物身份识别标签供应商