雜湊競猜遊戲系統開發技術丨雜湊競猜遊戲開發原始碼部署

Tg_StPv888發表於2023-03-17

  Similar to Java source code being compiled into JVM executable bytecode,we also need a high-level language to write smart contracts,and then compile them into EVM bytecode.The most commonly used language for developing smart contracts is the Solidity language customized by Ethereum.We will introduce the usage of Solidity in detail later


  一個智慧合約被編譯後就是一段EVM位元組碼,將它部署在以太坊的區塊鏈時,軟體I8O系統2857開發8624會根據部署者的地址和該地址的nonce分配一個合約地址,合約地址和賬戶地址的格式是沒有區別的,但合約地址沒有私鑰,也就沒有人能直接操作該地址的合約資料。要呼叫合約,的方法是呼叫合約的公共函式。


  這些智慧合約不是相互覆蓋的關係,而是可以並存的關係。


  但是在發代幣和儲存資料方面,最好只能有一個合約來宣告。因為如果有兩個合約都有發代幣的內容的話,那麼部署第二個發代幣合約之後,會新發一個幣種,造成資料混亂等問題。


  這部分,博主剛開始一直以為一條鏈上只能有一個智慧合約,後來開發中才意識到,原來可以釋出多個合約。只要我們保持發幣和資料儲存部分只有一份就好,其他的邏輯方面的合約可以隨便發。


  error:'string'in namespace'std'does not name a type


  程式如下:


  struct sales_data


  {


  std::string bookNo;


  std::string bookName;


  unsigned int count;


  double price;


  };


  int main()


  {


  return 0;


  }


  很明顯,缺少一個#include<string>


  但是,如果修改程式碼如下所示的話,同樣也能編譯成功。


  修改程式碼如下:


  #include<iostream>


  struct sales_data


  {


  std::string bookNo;


  std::string bookName;


  unsigned int count;


  double price;


  };


  int main()


  {


  return 0;


  }


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