Web3js

部署合約與實例化合約

  • February 17, 2022

我為這個非常基本的問題道歉,但我有點困惑。部署合約和實例化合約有什麼區別?


創建新合約有兩種方法:部署和實例化。

當您部署合約時,它是通過向區塊鏈發送交易來完成的。交易包括合約的字節碼,交易用於創建新合約。

創建契約的另一種方法是為現有契約創建新契約。所以是這樣的:

pragma solidity ^0.5.0; 

contract A {

}

contract B {
   function create() public {
       A newContract = new A();
   }
}

這裡將是一個新地址中的新newContract合約實例。AnewContract變數基本上只包含合約A的地址。

**部署合約後,您可以創建該合約的實例,
以呼叫他的、函式或變數。:)

所以我們創建了該合約的實例來與之互動。**

引用自:https://ethereum.stackexchange.com/questions/82478