合约学习(一)

hardhat学习

  1. 安装 hardhat 在安装过程中可能会出现安装失败的问题,
    请参考:https://blog.csdn.net/laosao_66/article/details/135880270

https://zhuanlan.zhihu.com/p/628536324

pragma solidity ^0.4.0;

contract Map {

    // 定义一个映射

    mapping (address => uint) favoriteNumber;

    function setMyNumber(uint _myNumber) public {

        // 更新我们的 ‘favoriteNumber’ 映射来讲 _myNumber 存储在 msg.sender

        favoriteNumber[msg.sender] = _myNumber;

        // 存储数据至映射的方法和将数据存储在数组相似
    }

    function whatIsMyNumber() public view returns (uint){
        return favoriteNumber[msg.sender];
    }
}

在这个小小的例子中,任何人都可以调用 setMyNumber 在我们的合约中存下一个 uint 并且与他们的地址相绑定。 然后,他们调用 whatIsMyNumber 就会返回他们存储的 uint。

使用 msg.sender 很安全,因为它具有以太坊区块链的安全保障 —— 除非窃取与以太坊地址相关联的私钥,否则是没有办法修改其他人的数据的。

版权声明:
作者:dingding
链接:https://www.techfm.club/p/140249.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>