深入分析智慧合約DAPP代幣合約流動性質押挖礦分紅系統開發(案例開發及原始碼)

xiaofufu發表於2023-03-10

  與傳統的合約相比,智慧合約有三大特點:


  1、合約內容公開透明


  智慧合約部署在區塊鏈上,其合約內容自然是公開透明的。


  2、合約內容不可篡改


  同樣,因為部署在區塊鏈上原因,智慧合約的內容是無法被修改的。


  3、傭玖執行


  執行在區塊鏈上的智慧合約,同樣被區塊鏈上網路節點共同維護,只要區塊鏈在,智慧合約就能傭玖的執行下去。


  pragma solidity^0.4.24;


  interface tokenRecipient{function receiveApproval(address _from,uint256 _value,address _token,bytes _extraData)external;}


  library SafeMath{


  function add(uint256 a,uint256 b)internal pure returns(uint256 c){


  c=a+b;


  require(c>=a);


  }


  function sub(uint256 a,uint256 b)internal pure returns(uint256 c){


  require(b<=a);


  c=a-b;


  }


  function mul(uint256 a,uint256 b)internal pure returns(uint256 c){


  c=a*b;


  require(a==0||c/a==b);


  }


  function div(uint256 a,uint256 b)internal pure returns(uint256 c){


  require(b>0);


  c=a/b;


  }


  }


  contract Alchemy{系統搭建:MrsFu123


  using SafeMath for uint256;


  //代幣的公共變數:名稱、代號、小數點後面的位數、代幣發行總量


  string public name;


  string public symbol;


  uint8 public decimals=6;

  uint256 public totalSupply;


  address public owner;


  address[]public ownerContracts;//允許呼叫的智慧合約


  address public userPool;


  address public platformPool;


  address public smPool;


  //燃燒池配置


  mapping(string=>address)burnPoolAddreses;


  //代幣餘額的資料


  mapping(address=>uint256)public balanceOf;


  //代付金額限制


  //比如map[A]<B>=60,意思是使用者B可以使用A的錢進行消費,使用上限是60,此條資料由A來設定,一般B可以使中間擔保平臺


  mapping(address=>mapping(address=>uint256))public allowance;


  //交易成功事件,會通知給客戶端


  event Transfer(address indexed from,address indexed to,uint256 value);


  //交易ETH成功事件,會通知給客戶端


  event TransferETH(address indexed from,address indexed to,uint256 value);


  //將銷燬的代幣量通知給客戶端 


  event Burn(address indexed from,uint256 value);


  /**


  *建構函式


  *初始化代幣發行的引數


  */


  //990000000,"AlchemyChain","ALC"


  constructor(


  uint256 initialSupply,


  string tokenName,


  string tokenSymbol


  )payable public{


  totalSupply=initialSupply*10**uint256(decimals);//計算發行量


  balanceOf[msg.sender]=totalSupply;//將發行的幣給建立者


  name=tokenName;//設定代幣名稱


  symbol=tokenSymbol;//設定代幣符號


  owner=msg.sender;


  }


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69956839/viewspace-2939102/,如需轉載,請註明出處,否則將追究法律責任。

相關文章