1. 以太坊合約中一個合約是否可以調用另外一個合約
可以的,參考合約之間的交互。數字貨幣交易平台幣匯。比如我正試圖從另一個工廠合約中簽智能合約,然後重新部署新智能合約的地址。然而,它返回的地址是交易哈希值而不是合約地址。我相信這是因為當地址被返回時合約尚未開采。當我使用Web3部署智能合約時,它似乎一直等到智能合約被部署完成後才輸出合約地址。
2. 以太坊智能合約開發:讓合約接受轉賬
在以太坊智能合約開發中,通常會有向合約地址進行轉賬的需求,那麼有幾種向合約地址進行轉賬的方式呢?
有三種方式:
部署合約時轉賬
調用合約提供的方法
直接向合約地址進行轉賬
但有一個問題,以太坊的智能合約默認是拒絕來自任何地址的轉賬,那麼如何讓合約能夠支持接收轉賬呢?
1、部署轉賬
在進行合約開發時,如果想要在部署時,直接向該合約進行轉賬,只需要給構造函數中添加payable修飾符。
示例:
2、執行合約轉賬
執行合約轉賬,則需要給你需要支持轉賬功能的方法添加payable修飾符
示例:
3、直接轉賬
支持直接轉賬,需要藉助後備函數(fallback function),只需要為後備函數添加 payable 修飾符
示例: