Blockchain 如何部署使用彼此功能的多个solidity智能合约?
我有三份智能合约,分别是a.sol,b.sol和c.sol。。。在这三个智能合约中,前两个是独立的智能合约,而c.sol使用a.sol和b.sol的功能,因此c.sol需要“导入”前两个智能合约。“导入”在本地工作,但如何通过testnet上的混音/块菌来部署所有这些功能,以便c.sol仍然可以访问a.sol和b.sol的功能?如果您的项目是用块菌创建的,您可以通过以下方式设置Blockchain 如何部署使用彼此功能的多个solidity智能合约?,blockchain,ethereum,solidity,smartcontracts,truffle,Blockchain,Ethereum,Solidity,Smartcontracts,Truffle,我有三份智能合约,分别是a.sol,b.sol和c.sol。。。在这三个智能合约中,前两个是独立的智能合约,而c.sol使用a.sol和b.sol的功能,因此c.sol需要“导入”前两个智能合约。“导入”在本地工作,但如何通过testnet上的混音/块菌来部署所有这些功能,以便c.sol仍然可以访问a.sol和b.sol的功能?如果您的项目是用块菌创建的,您可以通过以下方式设置c.sol: import "./a.sol"; import "./b.sol"; contract c is a,
c.sol
:
import "./a.sol";
import "./b.sol";
contract c is a, b {
...
}
如果这是您的代码结构,您将能够使用
Truffle migrate
(前提是您的迁移设置正确)部署您的Truffle项目。您的合同a和合同b是否假定为独立合同,无论合同c如何使用?ie:用户在合同a中存储数据,合同c将使用该数据
如果是这样的话,那么你可以将契约a和b作为契约c的变量,如下所示
a、 溶胶
c、 溶胶
学分:
contract A {
function doSomething() {
...
}
}
contract C {
A a;
function setA(address addressOfContractA) {
a = A(address);
}
function makeADoSomething() {
a.doSomething();
}
}