在智慧型合約的編譯過程中,有兩種情況:呼叫者和被呼叫者在乙個sol檔案中和分別在不同的檔案中。
在下面的智慧型合約中,demo1和demo在同乙個檔案中,可進行同時編譯,然後逐個發布。
pragma solidity ^0.5.10;
contract demo1
}contract demo2
}
當發布完成,可通過第demo2的tosetdata方法進行demo1方法的呼叫。傳遞的第乙個引數為demo1的智慧型合約位址,第二個引數為要設定的值。
在大多數情況下,兩個智慧型合約不存在於同乙個sol檔案中,那麼就需要使用另外一種形式來進行呼叫。還拿呼叫demo1方法來舉例,用另外乙個sol檔案中的demo3來呼叫demo1。
首先需要宣告介面,然後在demo3中直接呼叫對應的介面。
pragma solidity ^0.5.10;
contract demo1
contract demo3
}
呼叫介面是傳遞的引數依舊同第一種情況。
程式新視界
關注程式設計師的職場生涯,大量優質學習資源、技術文章分享
solidity智慧型合約程式設計基礎
基礎語法 一 1 函式定義 function 函式名 引數型別 引數1,引數型別 引數2 訪問許可權 讀取資料型別函式 returns 返回資料型別 訪問許可權 public private 一般private許可權的話,引數命名前面加乙個 例如 name 讀取資料型別函式 view函式 唯讀且不可...
solidity智慧型合約重要特性
solidity智慧型合約的一些重要特性,如變長陣列中的storage和memory變數,storage和memory的儲存位置以及字串陣列string使用。區塊鏈開發 以太坊 fabric bcos 密碼技術 共識演算法 位元幣 其他鏈 string,bytes 對於變長陣列,在初始化分配空間前不...
以太坊solidity智慧型合約設計模式
設計模式是許多開發場景中的首選解決方案,本文將介紹五種經典的智慧型合約設計模式並給出 以太坊solidity實現 自毀合約 工廠合約 名稱登錄檔 對映表迭代器和提款模式。合約自毀模式用於終止乙個合約,這意味著將從區塊鏈上永久刪除這個合約。一旦被銷毀,就不可能呼叫合約的功能,也不會在賬本中記錄交易。現...