135 002 智慧型合約設計 多員工薪酬系統

2021-09-24 20:30:47 字數 879 閱讀 1717

@(135- block chain| 區塊鏈)

可調整位址和薪水的單員工系統

goal——多員工系統

solution—— 陣列+結構體

**風格——方便簡潔

臨時空間,在function結束後釋放

狀態變數:storage

function 輸入變數:calldata

function 返回型別:memory

本地變數:storage

模擬c++的位址

指向 evm中的一塊記憶體區域

不同儲存空間變數賦值

pragma solidity ^0.4.0;

contract payroll

// uint constant payduration = 30 days;

uint constant payduration = 10 seconds;//for test:10 seconds

address owner;

employee employees;//dynamic array

function payroll()

function _partialpaid(employee employee) private

function _findemloyee(address employeeid) private returns (employee,uint)

function getpaid ()

employees[index].lastpayday = nextpayday;//原則:先修改內部變數,再給錢——》之後會講,安全問題

employee.id.transfer(employee.salary);

}}

編寫智慧型合約

1.安裝node.js 2.安裝truffle npm install g truffle 3.啟動testrpc以太坊環境 testrpc 4.另開終端視窗新建專案 mkdir demo cd demo 5.初始化專案目錄 truffle init 6.建立合約檔案 truffle create ...

積分智慧型合約

pragma solidity 0.4.22 title safemath dev math operations with safety checks that throw on error library safemath function div uint256 a,uint256 b int...

部署智慧型合約

合約部署需要挖礦才能成功,我們新開乙個視窗用與挖礦,新開乙個控制台,輸入命令 geth attach 連線到控制台,執行miner.start 1 開始挖礦。合約demo如下 pragma solidity 0.4.0 contract infocontract function getinfo p...