solidity 合约间调用以及参数传递

简介: 在 以太坊中合约间是可以相互调用,并且正常进行参数传递以及返回值处理.contract1.solpragma solidity ^0.4.0;contract Test1 { uint256 public v=7; function vote(uint256 a) pu...

在 以太坊中合约间是可以相互调用,并且正常进行参数传递以及返回值处理.

contract1.sol

pragma solidity ^0.4.0;
contract Test1 {

     uint256 public v=7;
    function vote(uint256 a) public returns (uint256) {
        v=a;
       return (a);
    }
}

contract2.sol

pragma solidity ^0.4.0;
import "./contract1.sol";

contract Test2 {
    Test1 public t;
     uint256 public v=7;
     constructor(address t1) public {
         t=Test1(t1);
     }
    function vote(uint256 a) public {
       v=t.vote(a);
    }
}

如下调用Test2.vote(3)会将合约Test1的 v 和合约Test2的 v 都设置为3.

目录
相关文章
|
4月前
|
存储 区块链 数据安全/隐私保护
智能合约中最常见的11种函数
下面列出了一些常见的智能合约函数及其用途,并提供了一些基本的示例。
51 0
|
存储 SQL API
如何判定 EVM 合约的类型
通过使用正确的API,可以轻松获取与合约地址相关的ERC20代币的所有转账记录。通过创建账户、编写使用API的脚本并使用getTokenTransfers函数,您可以访问和分析有关ERC20代币的有价值的转账数据。
149 0
如何判定 EVM 合约的类型
|
6月前
|
编译器 API C语言
在x86架构汇编语言中函数参数传递的三种约定
在x86架构汇编语言中函数参数传递的三种约定
181 2
|
6月前
|
存储 Rust 程序员
rust中的函数:定义、调用与闭包
本文将深入探讨Rust编程语言中函数的定义、调用方式,以及闭包(closures)的概念和应用。我们将从函数的基本语法出发,逐步深入到函数的参数传递、返回值,再进一步介绍闭包及其捕获环境的能力,帮助读者全面理解并熟练运用Rust中的函数与闭包。
|
区块链
Jvav 调用 Conflux 智能合约
Jvav 调用 Conflux 智能合约
114 0
|
区块链
ERC20代币合约开发规则详解(源码示例)
ERC20代币合约是一个遵循ERC20标准的代币合约,它实现了代币转移、代币冻结、代币解锁等功能。作为一个通用的标准,ERC20代币合约可以被广泛应用于各种去中心化交易所、钱包、ICO等场景。
|
Go 数据安全/隐私保护
Solidity笔记-合约间的互相调用
Solidity笔记-合约间的互相调用
233 0
|
编译器 区块链
Solidity函数学习
Solidity函数学习
166 0
Solidity函数学习
|
区块链
SOLIDITY REMIX方法传递数组参数
SOLIDITY REMIX方法传递数组参数
660 0
SOLIDITY REMIX方法传递数组参数
|
JSON Go 区块链
【智能合约】Go语言调用智能合约 | geth
目录 1. 获取abi文件 2. 安装abigen工具 3. remix连接私有链 4. 合约部署 5. 初始化私有链节点创世块 6. 合约部署 7. 调用
1379 0
【智能合约】Go语言调用智能合约 | geth